f622dc0619
⭐ Sterne-Bewertungs-System (1-5 pro Person, Till + Lea unabhängig) 🏆 Dynamische Ranking-Liste mit Top-3-Badges (Gold/Silber/Bronze) 💬 Kommentare unter jeder Karte (aufklappbar, eigene löschbar) 👤 User-Profil-Switch (Till ↔ Lea) – Header-Pill mit Modal 💜 Eigene Ideen sind jetzt vollwertige Karten (im Ideen-Tab gemischt) ✏️ Eigene Ideen bearbeitbar + löschbar (eigener Tab) 📊 Sortierung: Ranking / Status / Preis / Name / Eigene zuerst 📈 Live-Stats: Ideen, Bewertet, Kommentare, Tage bis Reise 🎨 Bottom-Navigation mit 5 Tabs + Badge für eigene Ideen 📋 JSON-Export aller Daten für Codex 🔧 Daten-driven: destinations.json + dynamisches Rendering 📱 Mobile-optimiert mit Safe-Area-Insets Datenstruktur: - localStorage.f24_ratings, f24_comments, f24_own, f24_user - 18 built-in Destinations aus data/destinations.json - Gleiche Render-Pipeline für built-in und own
3.8 KiB
3.8 KiB
Fredi24 – Feature-Übersicht
Live: https://holiday.heidrich-digital.de · Passwort: frediurlaub26
Kern-Features (v3.0)
⭐ Sterne-Bewertungs-System
- Jede Destination kann von Till + Lea unabhängig bewertet werden (1–5 Sterne)
- Klick auf Stern setzt/entfernt Bewertung
- Durchschnitt wird automatisch berechnet
- Persistent in localStorage (
f24_ratings)
🏆 Dynamische Ranking-Liste
- Eigener Tab "Ranking" (Bottom-Nav)
- Sortiert automatisch nach Durchschnitt aller Sterne
- Top 3 bekommen Gold/Silber/Bronze Badge
- Klick auf Ranking-Eintrag → springt zur Detail-Karte
- Zeigt Till's und Lea's Bewertungen separat
💬 Kommentar-System
- Unter jeder Karte aufklappbar
- Aktiver User (Till oder Lea) postet als sich selbst
- Eigene Kommentare löschbar
- Timestamp ("gerade", "5 Min", "2 Std", Datum)
- Lea's Kommentare in coral, Till's in teal markiert
👤 Profil-Switch
- Top-rechts: User-Pill mit aktuellem Profil
- Klick → Modal: Till oder Lea auswählen
- Aktive Identität wird für Sterne + Kommentare verwendet
- Speichert in localStorage (
f24_user)
💡 Eigene Ideen einreichen (gleichberechtigt!)
- FAB-Button rechts unten (✚)
- Modal mit allen Feldern (Emoji, Name, Land, Budget, Status, Begründung, Subtext, Flugzeit)
- Eigene Ideen erscheinen im Ideen-Tab gleichberechtigt (lila Border, "💜 Eigener Vorschlag"-Marker)
- Können bewertet & kommentiert werden wie alle anderen
- Eigener Tab "💜 Eigene" zeigt nur eigene Vorschläge
- Bearbeitbar + löschbar (nur eigene)
- Badge auf Nav-Item zeigt Anzahl
📊 Sortierung (im Ideen-Tab)
- Bewertung (höchste zuerst) – nutzt Sterne-Durchschnitt
- Status (TOP → SPÄTER)
- Preis aufsteigend / absteigend
- Name A-Z
- Eigene zuerst
📈 Live-Statistik-Dashboard
- 4 Kacheln oben im Ideen-Tab:
- Ideen gesamt (built-in + eigene)
- Bewertet (wie viele schon Sterne haben)
- Kommentare (Summe aller)
- Tage bis Reise (Countdown zum 13. Juli 2026)
🎨 Mobile-First UI
- Bottom-Navigation (5 Tabs: Ideen, Ranking, Eigene, Archiv, Info)
- Sticky Header mit User-Profil
- Safe-Area Padding für iOS Notch
- Optimiert für Touch (große Tap-Targets)
- 1-Spalten-Layout auf < 660px
🔓 Passwort-Schutz
- Client-side Gate (
frediurlaub26) - Session-basiert (
sessionStorage) - Schützt vor zufälligem Zugriff (kein hartes Security)
📋 Daten-Export
- JSON-Export aller Bewertungen + Kommentare + eigener Ideen
- Direkt in Zwischenablage → Codex kann auslesen
- Im Ranking-Tab über "📋 Export"-Button
Datenstruktur
LocalStorage Keys
f24_user→ aktiver User: "Till" | "Lea"f24_ratings→{destId: {Till: 1-5, Lea: 1-5}}f24_comments→{destId: [{user, text, ts}]}f24_own→ Array eigener DestinationensessionStorage.f24→ "1" wenn eingeloggt
Built-in Destinations (data/destinations.json)
18 vorgefertigte Destinationen mit allen Feldern:
- Sardinien, AIDA, Algarve, Glamping, Schweiz, Côte d'Azur
- Taurito, Fuerteventura, Menorca, Kapverden, Malta, Lanzarote, Costa del Sol
- MSC, Korsika, Madeira (später), Schweden (später), Bali (später)
Codex-Integration
Codex kann über git.heidrich-digital.de/till/holiday-2026:
data/destinations.jsonerweitern → neue eingebaute Destinationen- Aus
export-JSON die User-Daten auslesen → Ratings/Kommentare analysieren - HTML-Templates erweitern (siehe README.md für Card-Format)
- Auto-Deploy via Coolify bei Push auf main
Roadmap (Ideen für später)
- Bilder pro Destination (CDN/Unsplash)
- Wettervorhersage-Widget je Reisezeitraum
- Direkte Booking-Links (HRS, Booking.com)
- PDF-Export einer "Shortlist"
- Reise-Notizen pro Destination (Hotel-Links, Mietwagen-Codes)
- Felix-Geburtstag-Counter ("Felix ist X Jahre alt während Reise")
- Multi-Year-Planning (2026, 2027, 2028)