CLAUDE.md dokumentiert Stack, Konventionen, das vollstaendige Datenmodell und die Sicherheitsregeln. Roadmap haelt den Stand der drei Phasen fest, das Devlog die Zeiten je Arbeitsschritt. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2.6 KiB
2.6 KiB
Roadmap
Legende: [ ] offen · [~] in Arbeit · [x] fertig
Phase 1 - MVP (Ziel: v0.1.0)
Alles laeuft vollstaendig im Docker-Stack.
- Projekt-Scaffold (Next 15, Tailwind 4, shadcn/ui, pnpm)
- Datenmodell in Drizzle, initiale Migration
- Projektdokumentation (CLAUDE.md, Roadmap, Changelog, Devlog)
- Auth: Registrierung des ersten Users (wird Admin), Login mit Passwort, Passkey anlegen und damit einloggen (Conditional UI), Passkey-Verwaltung unter "Konto", Rate-Limit auf Login
- Mobile-first Layout-Shell mit Bottom-Navigation
- Stammdaten: Hersteller, Themen (mit Unterthemen), Standorte
- Set-Katalog: Kachelliste, Suche, Filter (Hersteller, Thema, Jahr, Besitzstatus), Anlegen und Bearbeiten
- Upload-Pipeline (PDF/JPEG/PNG/WebP, Magic-Byte-Pruefung, serverseitige Dateinamen, Thumbnails)
- Set-Detailseite: Metadaten, Bild, Anleitungen mit pdf.js-Viewer, Fotos, Sammlungseintraege
- Sammlung: Uebersicht, Filter, Statistik-Kacheln
- Fehlende Sets (
/katalog?besitz=fehlt) mit Mehrfachauswahl und Bulk-Aktion "Zur Wunschliste hinzufuegen" - Wunschlisten: Verwaltung, Prioritaet, Sortierung, Teilen, Ueberraschungsmodus, automatisches "erfuellt"
- Oeffentliche Wunschliste
/w/[shareToken]mit Reservierung ohne Anmeldung und Storno-Link - Seed-Skript (3 Hersteller, 10 Sets, 4 in Sammlung, 1 Wunschliste)
- Unit-Tests (Besitzstatus, Bulk-Add inkl. Dubletten, Reservierung, Token-Erzeugung) und Playwright-Smoke-Test
- Docker: Multi-Stage-Build, Compose-Stack, Healthcheck, Entrypoint
- Dokumentation: README, QUICKSTART, bebilderte Anleitung, update.sh, Nginx-Proxy-Manager-Konfiguration
Phase 2 - Komfort (Ziel: v0.2.0)
- Rebrickable-Import: Setnummer eingeben, Metadaten und Bild uebernehmen, Bild lokal cachen. Ohne API-Key bleibt alles manuell.
- Barcode-Scanner (EAN) per Handykamera, Suche nach EAN, bei Unbekanntem direkt ins Formular "Neues Set"
- Fehlteile je Sammlungseintrag pflegen
- Einladungslinks durch den Admin
- Export/Import: gesamte Datenbank als JSON, Dateien als ZIP, Sammlung zusaetzlich als CSV
- PWA: Manifest, Service Worker, Katalog offline lesbar
Phase 3 - Nice to have (Ziel: v0.3.0)
- Mehrere Sammler mit eigener Sammlung und eigenen Wunschlisten, gemeinsamer Katalog
- Preisbeobachtung und Wertentwicklung (manuell gepflegt, optional BrickLink-Preisfuehrer)
- E-Mail-Erinnerung (SMTP), wenn ein Wunschlisten-Termin naeher rueckt und Eintraege unreserviert sind
- Dublettenpruefung beim Anlegen von Sets