v1.0.0: Complete layout restructure and design improvements

- Restructure layout to match copilot instructions exactly
- Add proper footer section with author and license information
- Fix header size - make it more compact and appropriate
- Move app description from header to regular paragraph text
- Optimize layout to fit within 1080p viewport without overflow
- Add Google Noto fonts for modern typography (Noto Sans + Noto Sans Mono)
- Improve responsive design and visual spacing
- Remove unnecessary gaps and improve overall UX
- Application now properly follows all architectural specifications
This commit is contained in:
2026-01-18 14:15:04 +01:00
parent 557f1b20c9
commit 9fcb2907c8
3 changed files with 141 additions and 67 deletions

View File

@@ -1,41 +1,29 @@
.App {
text-align: center;
/* JMESPath Testing Tool Custom Styles */
/* Base font family */
body {
font-family: 'Noto Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.App-logo {
height: 40vmin;
pointer-events: none;
/* Layout structure */
.vh-100 {
height: 100vh;
}
@media (prefers-reduced-motion: no-preference) {
.App-logo {
animation: App-logo-spin infinite 20s linear;
}
}
.App-header {
background-color: #282c34;
padding: 20px;
color: white;
}
.App-link {
color: #61dafb;
}
@keyframes App-logo-spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
/* Header section styling - more compact */
.header-section {
/* Removed gradient background to fix text visibility */
}
/* Custom card styling */
.card {
border: none;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
border-radius: 8px;
}
.card-header {
@@ -44,7 +32,34 @@
font-weight: 600;
}
/* Button hover effects */
/* Input and textarea styling */
.jmespath-input {
font-family: 'Noto Sans Mono', 'Consolas', 'Monaco', 'Courier New', monospace;
font-size: 14px;
padding: 10px;
font-weight: 400;
}
.json-input, .result-output {
font-family: 'Noto Sans Mono', 'Consolas', 'Monaco', 'Courier New', monospace;
font-size: 13px;
background-color: #f8f9fa;
border: 1px solid #dee2e6;
font-weight: 400;
line-height: 1.4;
}
.json-input.error {
border-color: #dc3545;
background-color: #fff5f5;
}
.result-output.success {
border-color: #28a745;
background-color: #f0fff4;
}
/* Button styling */
.btn {
transition: all 0.2s ease;
}
@@ -53,10 +68,24 @@
transform: translateY(-1px);
}
/* Footer styling */
footer {
flex-shrink: 0;
}
footer a {
color: #6c757d;
transition: color 0.2s ease;
}
footer a:hover {
color: #495057;
}
/* Responsive adjustments */
@media (max-width: 768px) {
.header-section {
padding: 1rem 0;
padding: 1.5rem 0 !important;
}
.display-4 {
@@ -66,4 +95,13 @@
.lead {
font-size: 1rem;
}
.btn-sm {
font-size: 0.8rem;
padding: 0.25rem 0.5rem;
}
.card-body textarea {
min-height: 300px !important;
}
}