# 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
```
**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
```
**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
```
### 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
// 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