No description
Drei Migrationen, dazu der Snapshot in 1754400000_init_schema.js, aus dem die TypeScript-Typen erzeugt werden - beide muessen zusammenpassen, sonst laufen Schema und Typen auseinander. riders.user verknuepft einen Fahrer mit einem Login, ohne cascadeDelete: Ein geloeschtes Konto darf keine Zeiten mitreissen. Anlegen, Aendern und Loeschen von Fahrern wird zur Sache der Teamleitung; bisher durfte das jedes Teammitglied. users.viewRule von "nur ich selbst" auf "eingeloggt" - ohne das laesst sich zu einer bekannten ID kein Name anzeigen, was Mitgliederliste, Fahrerkonten und den Melder eines Trail-Markers betrifft. Die listRule bleibt eng, E-Mails bleiben ueber emailVisibility verborgen. users.createRule erlaubt eingeloggten Nutzern das Anlegen von Konten, nicht der ganzen Welt. events verliert status und bekommt starts/ends. Der Status war Handarbeit: Wer vergass, ein Event abzuschliessen, hatte eine falsche Uebersicht. Ein Datum weiss von selbst, was ansteht, laeuft und vorbei ist. ACHTUNG: Die Migration entfernt das Feld samt seiner Werte. trails bekommt status_changed und status_by. Einer Sperrung soll man ansehen, ob sie von heute Morgen oder vom letzten Herbst ist. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014dh9W1i7aLSdPYJzQPid5o |
||
|---|---|---|
| backend | ||
| docs/superpowers | ||
| frontend | ||
| .gitignore | ||
| CLAUDE.md | ||
| README.md | ||
| UML_basic.png | ||
stammtisch-hersbruck.de
Zeitmessung und Verwaltung für Läufe des Stammtisch Hersbruck.
Das Repository enthält beide Teile der Anwendung:
| Verzeichnis | Inhalt |
|---|---|
frontend/ |
SvelteKit-5-Anwendung (Svelte 5 Runes, Tailwind 4) |
backend/ |
PocketBase-Instanz — Dockerfile, Schema-Migrationen |
Schnellstart
Frontend gegen die produktive Instanz:
cd frontend
cp .env.example .env # Werte eintragen
npm ci
npm run dev
Die App läuft dann auf http://stammtisch-hersbruck.de.localhost:31337
Backend lokal (optional — der Default zeigt auf die produktive Instanz):
cd backend
cp .env.example .env # Werte eintragen
docker compose up -d --build
Danach in frontend/.env PUBLIC_PB_URL=http://127.0.0.1:8090 setzen.
Details stehen in backend/README.md.
PocketBase
Produktiv: https://api.stammtisch-hersbruck.de
Welche Instanz das Frontend anspricht, entscheidet PUBLIC_PB_URL in
frontend/.env. Das Schema ist als Migration in backend/pb_migrations/
versioniert.