Architekturüberblick
Tech-Stack
Abschnitt betitelt „Tech-Stack“| Ebene | Technologie |
|---|---|
| Frontend | Vite + React + TypeScript, als PWA (vite-plugin-pwa / Workbox) |
| Backend | Supabase — Postgres, Auth, Realtime, Storage, Edge Functions |
| Hosting | Cloudflare Worker (Static Assets) liefert die gebaute SPA aus dist/ |
| Auslieferung | Git-Push auf main → Cloudflare Workers Build → Deploy |
Repository-Struktur
Abschnitt betitelt „Repository-Struktur“tagwerk/├─ app/ ← die eigentliche Anwendung (Vite/React)│ ├─ src/│ ├─ supabase/migrations/ ← versionierte DB-Migrationen│ └─ wrangler.toml ← Worker „tagwerk" (Static Assets)├─ docs/ ← diese Dokumentation (Astro Starlight)└─ .github/workflows/ ← CI (Build/Tests) + DB-BackupsDatenzugriff
Abschnitt betitelt „Datenzugriff“Der Datenzugriff läuft über ein Repository-Muster: eine austauschbare Schnittstelle mit zwei Implementierungen —
supabaseRepositoryfür den Produktivbetrieb,memoryRepositoryfür Tests und den E2E-Modus (VITE_DATA_SOURCE=memory).
Darüber liegt der Store (StoreContext), der den App-Zustand hält und
Mutationen sowie Echtzeit-Updates bündelt.
Datentrennung
Abschnitt betitelt „Datentrennung“Alle Inhalte sind pro Familie getrennt und über Row-Level-Security (RLS) in Postgres abgesichert. Eine Person kann mehreren Familien angehören; sie sieht ausschließlich Daten ihrer eigenen Familien. Details unter Sicherheit & Rollen.