Commit graph

35 commits

Author SHA1 Message Date
10251e4f41 Doku und Werkzeuge: Tickets, Audit, Logos, Playwright-MCP
- dev/: Ticketliste, Audit und Vorschläge vom 17.09., Logo-SVGs,
  Lifeline-Bildwerkzeuge.
- AGENTS.md auf den aktuellen Stand (syncQueue statt syncService, kein
  legacy-Ordner mehr).
- .codex/ und __pycache__/ ignoriert; Playwright-MCP in .mcp.json.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 07:00:35 +00:00
83c6c5813d Frontend: Offline-Warteschlange, PWA, Event-Panel und Markenauftritt
Offline
- Alle Schreibzugriffe von API-Nutzern laufen über eine Warteschlange in
  IndexedDB (services/syncQueue.js): FIFO, zusammengefasste Updates,
  Wiederholung bei Netz/Sichtbarkeit/Backoff, 4xx wird als Fehler gemeldet.
- Medien-Uploads liegen mit Bytes in der Queue, erscheinen sofort mit
  Marker und werden nach dem Upload durch das Server-Objekt ersetzt.
- PWA-Modus mit Service Worker für die App-Hülle; API nie gecacht.
  npm run build erzeugt dist/pwa.
- Speicherzustand im Panel: ausstehend / Fehler mit Wiederholen-Knopf,
  Verbindungsanzeige im Header.

Event
- Event entsteht erst mit dem ersten Eintrag; jede Löschung fragt nach.
- Key Image als 4:3-Rahmen, Galerie mit Video, mehrere Sprachnotizen mit
  Notiz, Live-Pegel beim Aufnehmen, WAV-Umwandlung für lokale Aufnahmen.
- Neue Felder: Zeitraum, Kategorie, Personen, Meilenstein; Stimmung als
  kompakte Zeile mit ausklappbarer Punktfarbe.

Oberfläche
- Untere Leiste: Darstellung und Zoom links, Jahres-Pille mittig, Plus rechts.
- Logos und Goldpalette, Login neu, zehn Wellen-Presets mit Vorschau,
  Hintergrundbilder als Kacheln, Kontomenü und Einstellungen bereinigt,
  Escape schließt Ebenen, größere Touch-Ziele.
- Alten Sync-Service und ungenutzte Legacy-Seiten entfernt.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 07:00:35 +00:00
b262a6771f Backend: Medien-Typen, Sprachnotizen, Event-Felder und Sync-Härtung
- Event-Medien tragen Typ (image/video/audio), Dauer und Notiz; Videos
  bekommen ein Poster, Audio wird per ffmpeg nach AAC (audio/mp4)
  gewandelt, Originale werden mit Range-Unterstützung gestreamt.
- Upload nimmt eine Notiz (caption) direkt mit, PATCH ändert sie später.
- Neue Event-Felder: Zeitraum (end_date), Kategorie, Personen, Meilenstein.
  Regeln zentral in EventFields, damit CRUD und Sync gleich prüfen.
- Titel darf leer sein: ein Event entsteht mit dem ersten Eintrag.
- Artisan-Befehl media:transcode-voice-notes wandelt alte WebM/Ogg-Notizen,
  die Safari nicht abspielen kann.
- Login-Throttling, Settings-Validierung, Sync-Fehlercodes ohne Rohtext.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 07:00:35 +00:00
f79dcb9928 Optimiere LifeWave-Timeline-Performance und entferne toten Code in _src
- TimelineView: Shader-Event-Mapping in computed ausgelagert, deep-Watch
  entfernt, natives Wheel-Scrolling statt @wheel.prevent
- Events-Store: shallowRef statt tiefer Reaktivität, String-Sortierung
  statt Date-Objekten, getGlowColor memoized, DB-Writes debounced
- Edits werden jetzt dedupliziert als 'update' in die SyncQueue geschrieben
  (vorher gingen Änderungen beim Sync verloren)
- useImageCache: In-Flight-Deduping, Cache-Limit mit revokeObjectURL
- FloatingLines: Antialiasing aus (Fullscreen-Quad), deep-Watches entfernt
- Ungenutzte Seiten/Komponenten entfernt (~6.700 Zeilen, nicht geroutet)
- implementation-plan.md: Hinweis zu update-Action im Sync ergänzt
2026-07-07 15:54:35 +00:00
c1514999be APP als Hybrid Version - Anbindung an API 2026-06-05 09:54:12 +02:00
d054732bf5 30-04-2026 2026-04-30 14:54:39 +02:00
761b1156c1 10-04-2026 2026-04-22 12:57:10 +02:00
70a7776da5 25-02-2025 2026-03-06 14:01:49 +01:00
98084de7d0 20-02-2026 2026-03-06 13:56:20 +01:00
c62234e1ca docker setup
# Conflicts:
#	.gitignore
#	backend/vite.config.js
#	frontend/package-lock.json
2026-03-06 13:46:43 +01:00
Tilman Behrend
f01a0a967f add splitted layouts 2026-02-27 07:30:34 +01:00
Tilman Behrend
9fe2bcade3 update sample entry 2025-09-24 12:58:48 +02:00
Tilman Behrend
d598751598 add video poster and audio sample, alter deploment 2025-09-24 11:54:33 +02:00
Tilman Behrend
f1d1d3f96d add poster to videos 2025-09-24 10:27:30 +02:00
Tilman Behrend
8a9719ab9f add deployment for shared hosting without db 2025-09-22 13:21:36 +02:00
Tilman Behrend
2436d8fe4e remove tailwind and ssl cert 2025-09-22 13:12:10 +02:00
Tilman Behrend
825f1899ea add login to index page 2025-09-22 13:11:57 +02:00
Tilman Behrend
7d2ed57347 detail page: add tile gallery 2025-09-22 09:55:24 +02:00
Tilman Behrend
5402f98d05 add entry detail page 2025-09-21 17:47:28 +02:00
Tilman Behrend
4ab0ca00ad remove some background colors snd shadows 2025-09-19 09:23:56 +02:00
Tilman Behrend
6c909ea6e7 refactor. edit page with new selection pages 2025-09-18 23:04:10 +02:00
Tilman Behrend
d95f5fcb45 add visual code peacock setting 2025-09-18 21:18:02 +02:00
Tilman Behrend
d9621e6a90 edit page: change order of elements 2025-09-18 09:13:08 +02:00
Tilman Behrend
fd5bc7faea edit page: change footer and order order of elements 2025-09-18 09:05:48 +02:00
Tilman Behrend
ccd7adf0cb adjust footer edit page 2025-09-15 11:04:42 +02:00
Tilman Behrend
646355d0f9 Add entry edit form and options 2025-09-14 22:59:50 +02:00
Tilman Behrend
7b55e8770c add several pages and life wave 2025-08-31 22:58:40 +02:00
Tilman Behrend
734255aad2 add menu structure and off canvas on the right side 2025-06-02 01:03:35 +02:00
Kevin Adametz
9c48a17152 Test files für LifeWave mit anime.js 2025-04-10 17:26:38 +02:00
Kevin Adametz
c6dd063eee Datei readme gelöscht 2025-04-01 11:11:35 +02:00
Kevin Adametz
e1203834ac readme 2025-04-01 11:06:59 +02:00
Kevin Adametz
d010e18178 Readme 2025-04-01 11:04:22 +02:00
Kevin Adametz
a9a7a6ef4c Merge branch 'main' of https://github.com/medienflieger/thatsme
# Conflicts:
#	.gitignore
2025-04-01 11:02:25 +02:00
Kevin Adametz
56aa7836f4 first commit 2025-04-01 10:49:26 +02:00
Tilman Behrend
8f98045dfd
Initial commit 2025-04-01 10:47:03 +02:00