Vier neue Kapitel in der Anleitung (mehrere Sammler, Preise, Erinnerungen, Dubletten) mit vier automatisch erzeugten Bildern, Changelog 0.3.0 samt der bewusst weggelassenen BrickLink-Anbindung, Roadmap abgehakt und um einen offenen Ausblick ergaenzt, Devlog mit Zeiten und Stolpersteinen. Dazu zwei Korrekturen aus dem Testlauf: Der Zeitplan fuer Erinnerungen liess sich nicht aus Next' instrumentation.ts starten - die Datei wird auch fuer die Edge-Runtime uebersetzt, und das native SQLite-Modul bricht dort den Build. Er startet jetzt aus dem Healthcheck heraus, den der Container ohnehin alle 30 Sekunden aufruft, und zusaetzlich aus dem App-Layout; der Aufruf ist idempotent. Der Screenshot-Lauf waehlte ploetzlich die falschen Kacheln aus: Der neue Sammler-Umschalter benutzt ebenfalls aria-pressed. Die Auswahlkacheln tragen jetzt ein eigenes data-set-card. Ausserdem raeumen die Testskripte einen Container weg, den ein abgebrochener Lauf zurueckgelassen hat - sonst blockiert er den Port. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
3.3 KiB
3.3 KiB
Roadmap
Legende: [ ] offen · [~] in Arbeit · [x] fertig
Phase 1 - MVP (v0.1.0, abgeschlossen am 07.09.2026)
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 (v0.2.0, abgeschlossen am 07.09.2026)
- 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 (v0.3.0, abgeschlossen am 07.09.2026)
- Mehrere Sammler mit eigener Sammlung und eigenen Wunschlisten, gemeinsamer Katalog
- Preisbeobachtung und Wertentwicklung (manuell gepflegt). Der BrickLink-Preisfuehrer war als optional vermerkt und wurde bewusst weggelassen: er verlangt OAuth1 mit einer pro Nutzer registrierten Anwendung - viel Apparat fuer eine Zahl, die sich in zehn Sekunden eintippen laesst. Die Datenstruktur ist offen dafuer.
- E-Mail-Erinnerung (SMTP), wenn ein Wunschlisten-Termin naeher rueckt und Eintraege unreserviert sind
- Dublettenpruefung beim Anlegen von Sets
Danach
Phase 1 bis 3 sind umgesetzt. Was noch offen ist, steht hier - ohne Termin und ohne Anspruch auf Vollstaendigkeit:
- BrickLink-Preisfuehrer anbinden, falls der Aufwand sich doch lohnt
- Mehrere Fotos je Sammlungseintrag (bisher nur je Set)
- Anleitungen im PDF-Viewer durchsuchen
- Statistik ueber die Zeit: was kam wann dazu