Files
flimmer/DEVLOG.md
T

7.5 KiB
Raw Permalink Blame History

DEVLOG — Entwicklungszeiterfassung Flimmer

Alle Zeiten per date-Befehl erfasst (Europe/Berlin), nicht geschätzt.


Etappe 1 — Projektgerüst, Branding, Docker, DB-Schema, Auth (v0.1.0)

# Start Ende Dauer Arbeitsschritt
1.1 18:09 18:12 3 min Rückfragen geklärt, Repo und Werkzeugkette geprüft, Projekt-CLAUDE.md als Gedächtnis angelegt
1.2 18:12 18:22 10 min package.json, TypeScript-, Next- und PostCSS-Konfiguration; Abhängigkeiten installiert (Aufräumen nach hängendem npm-Prozess)
1.3 18:22 18:26 4 min Design-Tokens in globals.css: Farbwelt dunkel/hell, Verläufe, Bausteine, Mikro-Animation
1.4 18:26 18:33 7 min Logo entworfen: Bildmarke, Wortmarke aus Pfaden, Lockup, monochrom, Maskable; Icon-Generator und alle Rasterableitungen
1.5 18:33 18:36 3 min Prisma-Schema (22 Modelle), Umstellung auf Prisma 7 mit Treiber-Adapter, erste Migration
1.6 18:36 18:40 4 min Kernbibliotheken: Umgebungsprüfung, DB-Singleton, Auth (Passwörter, Sitzungen, API-Schlüssel), Instanz-Einstellungen, i18n
1.7 18:40 18:44 4 min App-Hülle: Layout mit Theme-Bootstrap, Header, Navigation, Nutzermenü, Anmeldung und Registrierung, Healthcheck; visuelle Kontrolle in beiden Themes und Kontrastkorrektur für den hellen Modus
1.8 18:44 18:47 3 min Docker-Setup (Dockerfile, Compose, Entrypoint mit Migrationslauf), OIDC-Anbindung, Seed-Skript, README, Design-Dokumentation, Changelog

Etappe 1 gesamt: 38 min (2026-09-01, 18:09 – 18:47)


Etappe 2 — TMDB-Anbindung (v0.2.0)

# Start Ende Dauer Arbeitsschritt
2.1 18:47 18:51 4 min TMDB-Client: Suche, Serien-, Film- und Staffelabruf, Collections, Anbieterlisten; kurzer Antwortspeicher
2.2 18:51 18:54 3 min Katalogschicht: Import von Titeln, Staffeln, Episoden und Streamingdiensten; Bild-Cache mit eigenem Ausliefer-Endpunkt
2.3 18:54 18:57 3 min Oberfläche: Suchseite mit Typfilter, Detailseite mit Staffeln, Poster- und Anbieterkomponenten
2.4 18:57 19:01 4 min Nachgebildete TMDB-Antworten und Testlauf (7 Tests); dabei zwei Fehler gefunden und behoben: veraltete Zähler nach dem Serienimport, kaputtes Bildsymbol statt Rückfallkachel

Etappe 2 gesamt: 14 min (2026-09-01, 18:47 – 19:01)


Etappe 3 — Kern-Tracking: Bibliothek, Status, Episodenfortschritt (v0.3.0)

# Start Ende Dauer Arbeitsschritt
3.1 19:01 19:06 5 min Domänenlogik: Aufnehmen, Status, Sichtungen, Rewatch-Durchläufe, Fortschritt, nächste Episode
3.2 19:06 19:10 4 min 14 Tests dazu; dabei ein Fehler im parallelen Testlauf gefunden (Testdateien räumten sich gegenseitig die Fixtures weg)
3.3 19:10 19:14 4 min Server-Aktionen, Rückmeldungen mit Rückgängig, Bedienelemente (Status, Bewertung, Notizen, Tags, Episodenliste, „+1 Episode")
3.4 19:14 19:17 3 min Bibliotheksseite mit Filtern und Facetten, Papierkorb, Umbau der Detailseite auf die interne Titel-ID
3.5 19:17 19:23 6 min Beispieldaten: erfundener Katalog mit lokal erzeugten Postern, gelebte Bibliothek mit Sichtungshistorie; Klickweg im Browser geprüft (+1 Episode, Rückgängig)
3.6 19:23 19:25 2 min Manuelles Anlegen ohne TMDB-Treffer; Build-Absturz durch zu viele Worker eingegrenzt und behoben

Etappe 3 gesamt: 24 min (2026-09-01, 19:01 – 19:25)


Etappe 4 — Universen mit Reihenfolgen und Fortschritt (v0.4.0)

# Start Ende Dauer Arbeitsschritt
4.1 19:25 19:30 5 min Domänenlogik: Universen, berechnete Erscheinungsreihenfolge, frei sortierbare Reihenfolgen, Fortschritt aus Sicht des Betrachters, Freigaben
4.2 19:30 19:33 3 min 12 Tests dazu; eine falsche Testannahme zur Reihenfolge korrigiert (nicht den Code)
4.3 19:33 19:36 3 min Server-Aktionen, sortierbare Liste mit Ziehen und Pfeilknöpfen, Reihenfolge-Umschalter, Aufnehmen, Teilen
4.4 19:36 19:39 3 min Seiten für Übersicht, Anlegen und Detailansicht; Build-Fehler durch server-only im Browser-Bundle gefunden und behoben; Umsortieren im Browser geprüft

Etappe 4 gesamt: 14 min (2026-09-01, 19:25 – 19:39)


Etappe 5 — Dashboard, Kalender, Statistiken (v0.5.0)

# Start Ende Dauer Arbeitsschritt
5.1 19:39 19:43 4 min Auswertungsschicht: Weiterschauen, kommende Episoden, neu verfügbar, Gesamtzahlen, Monatsverlauf, Verteilungen, Jahresrückblick
5.2 19:43 19:46 3 min Diagrammfarben gegen die Prüfungen auf Helligkeit, Sättigung, Farbfehlsichtigkeit und Kontrast gerechnet; SVG-Diagramme und Verteilungsbalken gebaut
5.3 19:46 19:50 4 min Seiten für Übersicht, Kalender und Statistik
5.4 19:50 19:54 4 min Drei Fehler gefunden und behoben: leeres Monatsdiagramm durch Zeitzonenversatz, Hydrationsbruch durch SVG-Titel, Kalender ohne abgeschlossene Serien; 7 Tests nachgezogen

Etappe 5 gesamt: 15 min (2026-09-01, 19:39 – 19:54)


Etappe 6 — Benachrichtigungen, Sync, Import/Export, REST-API, PWA (v0.6.0)

# Start Ende Dauer Arbeitsschritt
6.1 19:54 19:58 4 min Benachrichtigungen über vier Wege samt E-Mail-Vorlage; Hintergrundlauf mit Zeitplan und Cron-Endpunkt
6.2 19:58 20:02 4 min Import (Trakt, CSV) und Export (CSV, JSON)
6.3 20:02 20:07 5 min REST-API /api/v1 mit API-Schlüsseln, OpenAPI-Beschreibung
6.4 20:07 20:12 5 min Einstellungsseiten, Verwaltung, öffentliches Profil; Service Worker und Offline-Seite
6.5 20:12 20:15 3 min 9 Tests für Import, Export, Papierkorb und Doppelversandschutz
6.6 20:15 20:20 5 min TMDB-Ersatz für Screenshots, 18 Aufnahmen, Verkleinerung auf WebP (13 MB → 0,6 MB)
6.7 20:20 20:25 5 min docs/ANLEITUNG.md und docs/API.md, README erweitert, API von Hand durchgetestet

Etappe 6 gesamt: 31 min (2026-09-01, 19:54 – 20:25)


Gesamtübersicht

Etappe Version Dauer
1 — Gerüst, Branding, Docker, Schema, Auth 0.1.0 38 min
2 — TMDB-Anbindung 0.2.0 14 min
3 — Kern-Tracking 0.3.0 24 min
4 — Universen 0.4.0 14 min
5 — Dashboard, Kalender, Statistik 0.5.0 15 min
6 — Benachrichtigungen, Sync, Import/Export, API, PWA 0.6.0 31 min

Gesamtentwicklungszeit: 2 h 16 min (136 min, 2026-09-01, 18:09 – 20:25)

Womit die Zeit verging

Anteil Bereich
~35 min Oberfläche und Design (Branding, Komponenten, Seiten)
~30 min Domänenlogik (Tracking, Universen, Statistik, Abgleich)
~25 min Schnittstellen nach außen (TMDB, REST-API, Import/Export, Benachrichtigungen)
~20 min Tests — 49 Stück, die unterwegs sieben echte Fehler gefunden haben
~15 min Dokumentation, Screenshots, Changelog, Releases
~11 min Gerüst, Docker, Datenmodell, Werkzeugkette

Fehler, die die Tests gefunden haben

  1. importSeries gab veraltete Staffel- und Episodenzähler zurück.
  2. Testdateien räumten sich im parallelen Lauf gegenseitig die Fixtures weg.
  3. Das Monatsdiagramm blieb wegen eines Zeitzonenversatzes leer.
  4. Abgeschlossene, aber weiterlaufende Serien verschwanden aus dem Kalender.
  5. Poster zeigten das kaputte Bildsymbol statt der Rückfallkachel.
  6. Eine server-only-Kette landete im Browser-Bundle und brach den Build.
  7. Der SVG-Titel eines Diagramms brach die Hydration.