# UI/UX Design-Dokumentation - UI/UX Designer ## ๐ŸŽจ Design-System-รœbersicht Eine kompakte, tastaturoptimierte Desktop-Turnierverwaltungs-Anwendung im **Material Design 3** Stil mit **Indigo** als Primรคrfarbe. **Design-Philosophie:** - Desktop-First (1440px+) - Hohe Informationsdichte - Kompakte Darstellung (10-13px SchriftgrรถรŸen) - Tastatur-Navigation - Professionell & Funktional --- ## ๐ŸŽฏ Design-Prinzipien ### 1. **Desktop-Optimierung** - Zielauflรถsung: 1440px - 1920px - Mehrspaltiges Layout - Hohe Informationsdichte - Keine mobile Variante (aktuell) ### 2. **Kompaktheit** - Kleine SchriftgrรถรŸen (10-13px) - Reduzierte Abstรคnde - Kompakte Controls (small size) - Maximale Nutzung des Bildschirms ### 3. **Effizienz** - Tastatur-Navigation (Tab, Enter, ESC) - Shortcuts fรผr hรคufige Aktionen - Schnelle Dateneingabe - Minimale Klicks ### 4. **Konsistenz** - Material Design 3 Guidelines - Einheitliche Komponenten - Konsistente Farbgebung - Wiedererkennbare Patterns --- ## ๐ŸŽจ Farb-Palette ### Primรคr-Farben ``` Indigo (Haupt-Primรคrfarbe) โ”œโ”€โ”€ Main: #3F51B5 RGB(63, 81, 181) โ”œโ”€โ”€ Light: #7986CB RGB(121, 134, 203) โ”œโ”€โ”€ Dark: #303F9F RGB(48, 63, 159) โ””โ”€โ”€ Ultra: #1A237E RGB(26, 35, 126) ``` ### Sekundรคr-Farben ``` Deep Orange โ”œโ”€โ”€ Main: #FF5722 RGB(255, 87, 34) โ”œโ”€โ”€ Light: #FF8A65 RGB(255, 138, 101) โ””โ”€โ”€ Dark: #E64A19 RGB(230, 74, 25) ``` ### Graustufen (Background & Text) ``` โ”œโ”€โ”€ Grey 50: #FAFAFA โ†’ Paper Background โ”œโ”€โ”€ Grey 100: #F5F5F5 โ†’ Section Background โ”œโ”€โ”€ Grey 200: #EEEEEE โ†’ Disabled Background โ”œโ”€โ”€ Grey 300: #E0E0E0 โ†’ Border Color โ”œโ”€โ”€ Grey 500: #9E9E9E โ†’ Secondary Text โ”œโ”€โ”€ Grey 700: #616161 โ†’ Primary Text โ””โ”€โ”€ Grey 900: #212121 โ†’ Header Text ``` ### Semantische Farben ``` Success (Grรผn) โ”œโ”€โ”€ Main: #4CAF50 โ†’ Bestรคtigt, Bezahlt โ”œโ”€โ”€ Light: #81C784 โ””โ”€โ”€ Dark: #388E3C Warning (Orange/Amber) โ”œโ”€โ”€ Main: #FF9800 โ†’ Warnung, Pending โ”œโ”€โ”€ Light: #FFB74D โ””โ”€โ”€ Dark: #F57C00 Error (Rot) โ”œโ”€โ”€ Main: #F44336 โ†’ Fehler, Offen, Saldo โ”œโ”€โ”€ Light: #E57373 โ””โ”€โ”€ Dark: #D32F2F Info (Blau) โ”œโ”€โ”€ Main: #2196F3 โ†’ Information โ”œโ”€โ”€ Light: #64B5F6 โ””โ”€โ”€ Dark: #1976D2 ``` ### Status-Farben (Badges) ``` Geplant: #2196F3 (Blau) Laufend: #4CAF50 (Grรผn) Abgeschlossen: #9E9E9E (Grau) Offen: #F44336 (Rot) Bestรคtigt: #4CAF50 (Grรผn) ``` --- ## ๐Ÿ“ Typografie ### Font Family ``` Primary: 'Roboto', sans-serif Monospace: 'Roboto Mono', monospace (fรผr Zahlen/Codes) ``` ### Font Sizes (Kompakt fรผr Desktop) ``` โ”œโ”€โ”€ Heading 1: 18px (Seiten-Titel) โ”œโ”€โ”€ Heading 2: 15px (Bereich-รœberschriften) โ”œโ”€โ”€ Heading 3: 13px (Unter-รœberschriften) โ”œโ”€โ”€ Body: 11px (Standard-Text) โ”œโ”€โ”€ Small: 10px (Labels, Hilfstext) โ””โ”€โ”€ Tiny: 9px (FuรŸnoten, Timestamps) ``` ### Font Weights ``` โ”œโ”€โ”€ Light: 300 โ”œโ”€โ”€ Regular: 400 (Standard) โ”œโ”€โ”€ Medium: 500 (Labels, Buttons) โ”œโ”€โ”€ Semi-Bold: 600 (Headings) โ””โ”€โ”€ Bold: 700 (Wichtige Zahlen, Summen) ``` ### Line Heights ``` โ”œโ”€โ”€ Tight: 1.2 (Kompakte Listen) โ”œโ”€โ”€ Normal: 1.5 (Standard-Text) โ””โ”€โ”€ Relaxed: 1.8 (Lange Texte) ``` ### Text Styles (Material-UI) ```typescript // Typography Variants variant="h1" โ†’ 18px, Semi-Bold variant="h2" โ†’ 15px, Semi-Bold variant="h3" โ†’ 13px, Medium variant="body1" โ†’ 11px, Regular variant="body2" โ†’ 11px, Regular variant="caption" โ†’ 10px, Regular variant="overline" โ†’ 10px, Medium, Uppercase ``` --- ## ๐Ÿ“ Spacing & Layout ### Spacing Scale ``` โ”œโ”€โ”€ xs: 4px (Sehr eng) โ”œโ”€โ”€ sm: 8px (Standard-Innenabstand) โ”œโ”€โ”€ md: 16px (Zwischen-Abstand) โ”œโ”€โ”€ lg: 24px (Bereich-Abstand) โ”œโ”€โ”€ xl: 32px (GroรŸe Abstรคnde) โ””โ”€โ”€ xxl: 48px (Sehr groรŸe Abstรคnde) ``` ### Material-UI Spacing (8px-Basis) ```typescript sx={{ p: 1 }} // padding: 8px sx={{ p: 2 }} // padding: 16px sx={{ py: 1.5 }} // padding-top/bottom: 12px sx={{ px: 2 }} // padding-left/right: 16px sx={{ m: 2 }} // margin: 16px sx={{ gap: 1 }} // gap: 8px ``` ### Layout Grid ``` Desktop (1440px+) โ”œโ”€โ”€ Container Max-Width: 1920px โ”œโ”€โ”€ Sidebar Width: 240-280px โ”œโ”€โ”€ Content Area: Fluid (100%) โ”œโ”€โ”€ Gutter: 24px โ””โ”€โ”€ Column Gap: 16px ``` ### Component Heights (Kompakt) ``` โ”œโ”€โ”€ AppBar: 48px โ”œโ”€โ”€ Tab Bar: 36px โ”œโ”€โ”€ Table Row: 32px โ”œโ”€โ”€ Button (small): 28px โ”œโ”€โ”€ TextField (small): 32px โ””โ”€โ”€ Chip/Badge: 20px ``` --- ## ๐Ÿงฉ Komponenten-Styles ### 1. Buttons ```typescript // Primary Button // Secondary Button // Icon Button ``` **Design Specs:** - Font Size: 11px - Text Transform: none (keine ALL CAPS) - Padding: 4px 16px (small) - Min Width: 100px - Border Radius: 4px ### 2. Text Fields ```typescript ``` **Design Specs:** - Height: 32px (small) - Font Size: 11px - Label Font Size: 11px - Border Radius: 4px - Focus Color: Indigo (#3F51B5) ### 3. Tables ```typescript Name Wert
``` **Design Specs:** - Row Height: 32px - Font Size: 10px (Body), 11px (Header) - Header Background: Grey 100 - Zebra Stripes: Grey 50 (odd rows) - Hover: Action Hover (#F5F5F5) ### 4. Tabs ```typescript ``` **Design Specs:** - Tab Height: 36px - Font Size: 11px - Text Transform: none - Active Indicator: Indigo, 2px thick - Hover Background: rgba(63, 81, 181, 0.04) ### 5. Cards ```typescript Titel Inhalt ``` **Design Specs:** - Border Radius: 8px - Elevation: 1 (Standard), 2 (Hover) - Padding: 16px - Background: White ### 6. Chips / Badges ```typescript ``` **Design Specs:** - Height: 20px - Font Size: 9px - Font Weight: 600 - Border Radius: 10px - Padding: 0 8px ### 7. Dialogs ```typescript Bewerb erstellen {/* Content */} ``` **Design Specs:** - Max Width: 600px (md), 900px (lg) - Title Font Size: 13px - Content Padding: 16px - Actions Padding: 12px 16px --- ## ๐Ÿ“ฑ Layout-Patterns ### 1. Master-Detail Layout (Dashboard) ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ AppBar (48px) โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Header mit Filter & Aktionen โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ Grid mit Karten โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ”‚ โ”‚Cardโ”‚ โ”‚Cardโ”‚ โ”‚Cardโ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ### 2. Tab-Based Layout (Turnier-Ansicht) ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ AppBar mit Breadcrumbs (48px) โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ Tab Navigation (36px) โ”‚ โ”‚ [Stammdaten][Organisation][Bewerbe]... โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ Tab Content Area (Scrollable) โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Formulare / Tabellen / Charts โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ### 3. Split-Panel Layout (Nennungs-Maske) ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Pferd & Reiter (60%) โ”‚ Verkauf (40%) โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Suche & Details โ”‚ โ”‚ โ”‚ Buchungen โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ Navigation Buttons (5%) โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ Nennungen (60%) โ”‚ Bewerbe (40%) โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Tabelle โ”‚ โ”‚ โ”‚ Liste โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ### 4. Table-Sidebar Layout (Abrechnung) ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Buchungen-Tabelle (70%) โ”‚ Aktionen (30%)โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Table mit Buchungen โ”‚ โ”‚ โ”‚ Auswahl โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ Soll | Haben | ... โ”‚ โ”‚ โ”‚ Buchen โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ Summenzeile โ”‚ โ”‚ โ”‚ Drucken โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ โ”‚ Zahlung โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` --- ## ๐ŸŽญ Interaktions-Patterns ### 1. **Hover States** ```css /* Button Hover */ button:hover { background-color: rgba(63, 81, 181, 0.08); } /* Table Row Hover */ tr:hover { background-color: rgba(0, 0, 0, 0.04); } /* Card Hover */ .card:hover { box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); transform: translateY(-2px); transition: all 0.2s ease; } ``` ### 2. **Focus States** ```css /* Input Focus */ input:focus { border-color: #3F51B5; box-shadow: 0 0 0 2px rgba(63, 81, 181, 0.2); } /* Button Focus */ button:focus-visible { outline: 2px solid #3F51B5; outline-offset: 2px; } ``` ### 3. **Loading States** ```typescript ``` ### 4. **Empty States** ```typescript Keine Daten vorhanden ``` ### 5. **Error States** ```typescript Fehler Beim Laden der Daten ist ein Fehler aufgetreten. ``` --- ## ๐Ÿ–ผ๏ธ Icon-System ### Icon Library: **Material Icons** ```typescript import AddIcon from '@mui/icons-material/Add'; import EditIcon from '@mui/icons-material/Edit'; import DeleteIcon from '@mui/icons-material/Delete'; import SaveIcon from '@mui/icons-material/Save'; import CancelIcon from '@mui/icons-material/Cancel'; ``` ### Icon Sizes ``` โ”œโ”€โ”€ Small: 16px (Icon Buttons in Tables) โ”œโ”€โ”€ Medium: 20px (Default, Buttons) โ”œโ”€โ”€ Large: 24px (Headers) โ””โ”€โ”€ XLarge: 32px (Empty States) ``` ### Hรคufig verwendete Icons ``` Aktionen: โ”œโ”€โ”€ Add: AddIcon โ”œโ”€โ”€ Edit: EditIcon โ”œโ”€โ”€ Delete: DeleteIcon โ”œโ”€โ”€ Save: SaveIcon โ”œโ”€โ”€ Cancel: CancelIcon โ”œโ”€โ”€ Search: SearchIcon โ””โ”€โ”€ Refresh: RefreshIcon Navigation: โ”œโ”€โ”€ Home: HomeIcon โ”œโ”€โ”€ Arrow Back: ArrowBackIcon โ”œโ”€โ”€ Arrow Forward: ArrowForwardIcon โ””โ”€โ”€ Menu: MenuIcon Status: โ”œโ”€โ”€ Check Circle: CheckCircleIcon โ”œโ”€โ”€ Error: ErrorIcon โ”œโ”€โ”€ Warning: WarningIcon โ””โ”€โ”€ Info: InfoIcon Turnier: โ”œโ”€โ”€ Event: EventIcon โ”œโ”€โ”€ Trophy: EmojiEventsIcon โ”œโ”€โ”€ Person: PersonIcon โ”œโ”€โ”€ Horse: (Custom SVG) โ”œโ”€โ”€ Receipt: ReceiptIcon โ””โ”€โ”€ Print: PrintIcon ``` --- ## ๐Ÿ“Š Daten-Visualisierung ### 1. Status-Badges ```typescript // Farb-Mapping const statusColors = { geplant: '#2196F3', // Blau laufend: '#4CAF50', // Grรผn abgeschlossen: '#9E9E9E', // Grau offen: '#F44336', // Rot bezahlt: '#4CAF50', // Grรผn }; ``` ### 2. Summen-Zeilen (Tables) ```typescript GESAMT {total.toFixed(2)} โ‚ฌ ``` ### 3. Farb-kodierte Werte ```typescript // Saldo-Fรคrbung 0 ? 'error.main' : 'success.main', fontWeight: 600, }} > {saldo.toFixed(2)} โ‚ฌ ``` ### 4. Progress Indicators ```typescript {progress}% ``` --- ## โ™ฟ Accessibility (A11y) ### 1. Keyboard Navigation ``` Tab: Nรคchstes Element Shift + Tab: Vorheriges Element Enter: Aktion ausfรผhren / Dialog รถffnen Escape: Dialog schlieรŸen / Aktion abbrechen Space: Checkbox / Radio Button togglen Arrow Keys: Navigation in Listen / Tabs ``` ### 2. ARIA Labels ```typescript ``` ### 3. Focus Management ```typescript // Auto-Focus auf ersten Input im Dialog // Focus Trap in Dialog {/* Content */} ``` ### 4. Color Contrast ``` WCAG AA Standard (Minimum): โ”œโ”€โ”€ Normal Text: 4.5:1 โ””โ”€โ”€ Large Text: 3:1 Unsere Farben: โ”œโ”€โ”€ Primary (#3F51B5) auf White: 6.9:1 โœ… โ”œโ”€โ”€ Grey 700 (#616161) auf White: 5.7:1 โœ… โ”œโ”€โ”€ Grey 500 (#9E9E9E) auf White: 3.3:1 โš ๏ธ (nur fรผr groรŸe Texte) ``` --- ## ๐ŸŽฌ Animationen & Transitions ### Transition-Timing ```css /* Standard */ transition: all 0.2s ease; /* Hover Effekte */ transition: transform 0.2s ease, box-shadow 0.2s ease; /* Dialog/Modal */ transition: opacity 0.3s ease, transform 0.3s ease; ``` ### Material-UI Transitions ```typescript import { Fade, Slide, Grow } from '@mui/material'; // Fade In/Out Content // Slide Content // Grow Content ``` ### Animation Best Practices ``` โœ… DO: - Subtile Hover-Effekte (2-4px translateY) - Fade In/Out fรผr Dialogs - Smooth Transitions fรผr Tabs - Loading Spinners โŒ DON'T: - Zu lange Animationen (> 500ms) - Unnรถtige Animationen bei jedem Klick - Animationen die Bedienung verlangsamen ``` --- ## ๐Ÿ“ธ Screenshots & Wireframes ### 1. Login ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ [LOGO] โ”‚ โ”‚ โ”‚ โ”‚ Turnierverwaltung Login โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Username ๐Ÿ”’ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Password ๐Ÿ”’ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ [ Anmelden ] โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ### 2. Dashboard ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐Ÿ  Admin - Verwaltung [+ Neue] โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ Veranstaltungen โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚Frรผhjahr โ”‚ โ”‚Sommer โ”‚ โ”‚Herbst โ”‚ โ”‚ โ”‚ โ”‚Turnier โ”‚ โ”‚Cup โ”‚ โ”‚Turnier โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚[Laufend]โ”‚ โ”‚[Geplant]โ”‚ โ”‚[Geplant]โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ### 3. Turnier-Ansicht (Tabs) ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐Ÿ  Admin > Frรผhjahrsturnier > Turnier A โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚[Stammdaten][Organisation][Bewerbe][...] โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ Turnier-Konfiguration โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ ZNS-Daten: [Import Button] โ”‚ โ”‚ โ”‚ โ”‚ ร–TO-Typ: โ—‹ National โ— Internationalโ”‚ โ”‚ โ”‚ โ”‚ FEI-Typ: [CSI**, CDI2*, etc.] โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ Turnier-Beschreibung โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Titel: [________________] โ”‚ โ”‚ โ”‚ โ”‚ Sub-Titel: [________________] โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` --- ## ๐ŸŽจ Design-Tokens (CSS Variables) ```css /* theme.css */ :root { /* Colors */ --color-primary: #3f51b5; --color-primary-light: #7986cb; --color-primary-dark: #303f9f; --color-secondary: #ff5722; /* Backgrounds */ --bg-default: #fafafa; --bg-paper: #ffffff; --bg-hover: rgba(0, 0, 0, 0.04); /* Text */ --text-primary: #212121; --text-secondary: #757575; --text-disabled: #bdbdbd; /* Borders */ --border-color: #e0e0e0; --border-radius: 4px; /* Shadows */ --shadow-sm: 0 1px 2px rgba(0,0,0,0.08); --shadow-md: 0 2px 4px rgba(0,0,0,0.12); --shadow-lg: 0 4px 8px rgba(0,0,0,0.15); /* Spacing */ --spacing-xs: 4px; --spacing-sm: 8px; --spacing-md: 16px; --spacing-lg: 24px; --spacing-xl: 32px; /* Typography */ --font-size-xs: 10px; --font-size-sm: 11px; --font-size-md: 13px; --font-size-lg: 15px; --font-size-xl: 18px; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; /* Transitions */ --transition-fast: 0.15s ease; --transition-base: 0.2s ease; --transition-slow: 0.3s ease; } ``` --- ## ๐Ÿ“‹ Component Library Checklist ### โœ… Implementierte Komponenten - [x] Login Form - [x] Dashboard (Card Grid) - [x] Navigation (Breadcrumbs, Tabs) - [x] Tables (Data Tables mit Sorting) - [x] Forms (Text Fields, Select, Radio, Checkbox) - [x] Buttons (Primary, Secondary, Icon) - [x] Dialogs (Create, Edit, Confirm) - [x] Badges (Status Chips) - [x] Split Panels (Nennungs-Maske, Abrechnung) ### โณ Geplante Komponenten - [ ] Notifications/Toasts - [ ] Date/Time Pickers - [ ] File Upload - [ ] PDF Preview - [ ] Print Layout - [ ] Charts/Graphs - [ ] Calendar View - [ ] Drag & Drop Interface --- ## ๐ŸŽฏ Design-Checklist fรผr neue Features ``` โ–ก Folgt Material Design 3 Guidelines? โ–ก SchriftgrรถรŸe 10-13px (Desktop-kompakt)? โ–ก Indigo (#3F51B5) als Primรคrfarbe verwendet? โ–ก Tastatur-Navigation mรถglich? โ–ก Hover/Focus States definiert? โ–ก Loading States vorhanden? โ–ก Error States behandelt? โ–ก Empty States designed? โ–ก Mobile-Ansicht berรผcksichtigt? (falls relevant) โ–ก Accessibility (A11y) beachtet? โ–ก Konsistent mit bestehenden Komponenten? ``` --- ## ๐Ÿ“š Design-Ressourcen ### Material-UI Documentation - https://mui.com/material-ui/ - https://m3.material.io/ ### Figma Files - [Link zu Figma-Design-Datei] ### Color Tools - Material Color Tool: https://m2.material.io/resources/color/ - Contrast Checker: https://webaim.org/resources/contrastchecker/ ### Icon Resources - Material Icons: https://fonts.google.com/icons --- ## ๐Ÿ”ฎ Design-Roadmap ### Phase 1: MVP (Aktuell) - โœ… Basic Design System - โœ… Kompakte Desktop-Layouts - โœ… Alle 8 Turnier-Tabs - โœ… Nennungs-Maske - โœ… Abrechnung ### Phase 2: Verbesserungen - [ ] Druck-Layouts (PDF-Export) - [ ] Dark Mode - [ ] Erweiterte Visualisierungen - [ ] Drag & Drop fรผr Startlisten ### Phase 3: Erweiterungen - [ ] Mobile/Tablet-Responsiveness - [ ] Custom Themes pro Veranstalter - [ ] Animierte Dashboards - [ ] Real-Time Collaboration UI --- **Dokumentiert von:** UI/UX Designer **Version:** 1.0 **Datum:** 2026-03-24