From 24bd736b9a82cdc7a8051d0ce4e590dcb2e9e374 Mon Sep 17 00:00:00 2001 From: Docker Config Backup Date: Fri, 10 Oct 2025 20:49:14 +0200 Subject: [PATCH] style: Clean minimal design matching shadcn.com aesthetic MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove all gradient backgrounds for clean white interface - Update color scheme to neutral shadcn.com palette - Simplify card headers (remove icons and colored backgrounds) - Clean up spacing and reduce visual noise - Update buttons to use outline variants - Simplify table and stats styling with muted colors - Improve typography with better font smoothing - Match shadcn.com's minimal, professional aesthetic 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- frontend/app/components/DataPreview.tsx | 95 +++++++++++-------------- frontend/app/components/JourneyForm.tsx | 30 +++----- frontend/app/globals.css | 36 +++++----- frontend/app/page.tsx | 15 ++-- 4 files changed, 75 insertions(+), 101 deletions(-) diff --git a/frontend/app/components/DataPreview.tsx b/frontend/app/components/DataPreview.tsx index ddfc03e..c5729da 100644 --- a/frontend/app/components/DataPreview.tsx +++ b/frontend/app/components/DataPreview.tsx @@ -56,10 +56,10 @@ export default function DataPreview({ data, loading, formData }: DataPreviewProp } if (loading) { return ( - - - -

Načítání dat...

+ + + +

Načítání dat...

) @@ -67,26 +67,16 @@ export default function DataPreview({ data, loading, formData }: DataPreviewProp if (!data) { return ( - - - -
- -
- Náhled dat -
+ + + Náhled dat - +
-
- -
-

+ +

Vyplňte formulář a klikněte na "Vypočítat"

-

- Data se zobrazí zde -

@@ -94,60 +84,55 @@ export default function DataPreview({ data, loading, formData }: DataPreviewProp } return ( - - - -
- -
- Náhled dat -
+ + + Náhled dat - + -
+
-

Měsíc

-

{data.month}

+

Měsíc

+

{data.month}

-

Celkem záznamů

-

{data.total_entries}

+

Celkem záznamů

+

{data.total_entries}

-

Počáteční km

-

{data.start_km.toLocaleString()}

+

Počáteční km

+

{data.start_km.toLocaleString()}

-

Koncový km

-

{data.end_km.toLocaleString()}

+

Koncový km

+

{data.end_km.toLocaleString()}

-

Celkem ujeto

-

{(data.end_km - data.start_km).toLocaleString()} km

+

Celkem ujeto

+

{(data.end_km - data.start_km).toLocaleString()} km

-

Filtrováno dnů

-

{data.filtered_days}

+

Filtrováno dnů

+

{data.filtered_days}

-
+
- + {data.entries.length > 0 && Object.keys(data.entries[0]).map((key: string) => ( - ))} - + {data.entries.map((entry: any, index: number) => ( - + {Object.keys(entry).map((key: string) => ( - ))} @@ -158,29 +143,29 @@ export default function DataPreview({ data, loading, formData }: DataPreviewProp {formData && formData.startDate === '2025-01-01' && ( -
+
{fillResult && ( -
-

+
+

{fillResult.dry_run ? ( <> diff --git a/frontend/app/components/JourneyForm.tsx b/frontend/app/components/JourneyForm.tsx index 83c3b5a..568ac40 100644 --- a/frontend/app/components/JourneyForm.tsx +++ b/frontend/app/components/JourneyForm.tsx @@ -104,20 +104,13 @@ export default function JourneyForm({ onDataCalculated, setLoading, onFormDataCh } return ( - - - -
- - - -
- Vstupní údaje -
+ + + Vstupní údaje - + -
+
)} -
+
diff --git a/frontend/app/globals.css b/frontend/app/globals.css index 0187eaa..9245ff1 100644 --- a/frontend/app/globals.css +++ b/frontend/app/globals.css @@ -2,24 +2,24 @@ @theme { --color-background: 0 0% 100%; - --color-foreground: 222.2 84% 4.9%; + --color-foreground: 240 10% 3.9%; --color-card: 0 0% 100%; - --color-card-foreground: 222.2 84% 4.9%; + --color-card-foreground: 240 10% 3.9%; --color-popover: 0 0% 100%; - --color-popover-foreground: 222.2 84% 4.9%; - --color-primary: 221.2 83.2% 53.3%; - --color-primary-foreground: 210 40% 98%; - --color-secondary: 210 40% 96.1%; - --color-secondary-foreground: 222.2 47.4% 11.2%; - --color-muted: 210 40% 96.1%; - --color-muted-foreground: 215.4 16.3% 46.9%; - --color-accent: 210 40% 96.1%; - --color-accent-foreground: 222.2 47.4% 11.2%; + --color-popover-foreground: 240 10% 3.9%; + --color-primary: 240 5.9% 10%; + --color-primary-foreground: 0 0% 98%; + --color-secondary: 240 4.8% 95.9%; + --color-secondary-foreground: 240 5.9% 10%; + --color-muted: 240 4.8% 95.9%; + --color-muted-foreground: 240 3.8% 46.1%; + --color-accent: 240 4.8% 95.9%; + --color-accent-foreground: 240 5.9% 10%; --color-destructive: 0 84.2% 60.2%; - --color-destructive-foreground: 210 40% 98%; - --color-border: 214.3 31.8% 91.4%; - --color-input: 214.3 31.8% 91.4%; - --color-ring: 221.2 83.2% 53.3%; + --color-destructive-foreground: 0 0% 98%; + --color-border: 240 5.9% 90%; + --color-input: 240 5.9% 90%; + --color-ring: 240 5.9% 10%; --radius: 0.5rem; } @@ -30,8 +30,10 @@ } body { - font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; - background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; + background: hsl(var(--color-background)); min-height: 100vh; color: hsl(var(--color-foreground)); + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; } diff --git a/frontend/app/page.tsx b/frontend/app/page.tsx index 71a87d5..6d5be8c 100644 --- a/frontend/app/page.tsx +++ b/frontend/app/page.tsx @@ -10,18 +10,13 @@ export default function Home() { const [formData, setFormData] = useState(null) return ( -
-
-
-
- - - -
-

+
+
+
+

Kniha Jízd

-

+

Automatizovaný systém pro správu knihy jízd

+ {key}
+ {entry[key] !== null && entry[key] !== undefined ? entry[key] : '-'}