feat: Urlaub 2026 Dashboard initial

- Dashboard mit 9 Destinationen (TOP/OK/MAYBE/NEIN)
- Neue Idee: Glamping/Camping-Village Italien
- Château de Gruyères als Felix-kompatible Schweiz-Option
- Reisehistorie 2019–2025 vollständig
- Dokumentation für AI-Agenten (REQUIREMENTS, DESTINATIONS, HISTORY, NOTES)
This commit is contained in:
Till Heidrich
2026-05-26 11:51:12 +00:00
commit 00ed65ce1a
6 changed files with 1008 additions and 0 deletions
+86
View File
@@ -0,0 +1,86 @@
# Holiday 2026 Dashboard Familie Heidrich
**Live:** https://holiday.heidrich-digital.de
**Zweck:** Urlaubsplanung-Dashboard für die Sommerreise 2026 (ab 13. Juli)
## Projekt-Übersicht
Interaktives HTML-Dashboard zur Sammlung und Bewertung aller Urlaubsideen für Till, Lea und Felix Heidrich (Felix ist 3,5 Jahre alt im Sommer 2026).
## Datei-Struktur
```
holiday-2026/
├── index.html # Haupt-Dashboard (statisches HTML, kein Build)
├── README.md # Diese Datei Projekt-Übersicht
├── REQUIREMENTS.md # Harte Constraints und Reiseprofil
├── DESTINATIONS.md # Detaillierte Bewertung aller Destinationen
├── HISTORY.md # Reisehistorie 20192025
└── NOTES.md # Laufende Planungsnotizen & Entscheidungslog
```
## Tech-Stack
- **Frontend:** Statisches HTML5 + Vanilla JS + CSS Custom Properties
- **Fonts:** Playfair Display (Display) + Outfit (Body) via Google Fonts CDN
- **Hosting:** Coolify → Caddy → heidrich-infra-01 (Hetzner VPS)
- **Domain:** holiday.heidrich-digital.de
- **Git:** git.heidrich-digital.de/till/holiday-2026
## Deployment
Coolify übernimmt den Deploy automatisch bei jedem Push auf `main`.
Build-Pack: Static HTML (kein Node/Build-Prozess nötig).
Publish-Directory: `/` (root, da `index.html` direkt im Root liegt).
```bash
# Lokale Änderungen deployen
git add .
git commit -m "feat: neue Destination / update"
git push origin main
# → Coolify deployed automatisch
```
## Für AI-Agenten (Codex, Claude, etc.)
### Neue Destination hinzufügen
1. In `DESTINATIONS.md` dokumentieren (Status, Budget, Pro/Con)
2. In `index.html` Karte nach folgendem Muster einfügen:
```html
<div class="dest-card" data-status="TOP|OK|NEW|MAYBE|NEIN">
<div class="card-top">
<span class="dest-emoji">🏖️</span>
<div class="dest-info">
<div class="dest-name">Name</div>
<div class="dest-sub">Subtext · Details</div>
</div>
<span class="sbadge s-TOP">TOP</span>
</div>
<div class="scores">
<div class="sc"><div class="sc-label">Felix 🧒</div><div class="sc-bar"><div class="sc-fill f" style="width:80%"></div></div></div>
<div class="sc"><div class="sc-label">Lea 👩</div><div class="sc-bar"><div class="sc-fill l" style="width:70%"></div></div></div>
<div class="sc"><div class="sc-label">Mietwagen</div><div class="sc-bar"><div class="sc-fill m" style="width:100%"></div></div></div>
</div>
<!-- card-stats, card-budget, card-body -->
</div>
```
### Farbcodes
| Status | Farbe | CSS-Klasse |
|--------|-------|-----------|
| TOP | #1A4B47 (Teal) | `.s-TOP` |
| OK | #B87A1A (Gold) | `.s-OK` |
| NEU | #7B4DBA (Purple) | `.s-NEW` |
| MAYBE | #7A7060 (Muted) | `.s-MAYBE` |
| NEIN | #C4582A (Terra) | `.s-NEIN` |
### Wichtige Regeln
- ❌ Keine Referenzen zu vergangenen Beziehungen außerhalb der Kernfamilie Till/Lea/Felix
- ✅ Immer Budget als Gesamtbetrag (Flug + Unterkunft + Mietwagen)
- ✅ Klimaangaben im Juli (Reisemonat)
- ✅ Kindersitz-Standards bei Mietwagen berücksichtigen
- ✅ Felix (3,5J) ist das entscheidende Filter-Kriterium für Aktivitäten