No description
Find a file
Daniel Michelberger f316058367 fix: Deployment reparieren — adapter-node und Node-Anforderung festschreiben
Das Coolify-Deployment scheiterte an zwei Stellen:

1. npm ci brach mit EBADENGINE ab. Coolify baute mit Node 22.11.0, vite und
   @sveltejs/vite-plugin-svelte verlangen aber >=22.12; engine-strict=true
   aus der .npmrc macht daraus einen Abbruch statt einer Warnung. Das
   engines-Feld schreibt die Anforderung jetzt im Repo fest, statt sie einer
   Einstellung in der Coolify-UI zu überlassen.

2. Selbst nach erfolgreichem npm ci wäre der Start gescheitert: adapter-auto
   erkennt Coolify nicht ("Could not detect a supported production
   environment") und erzeugt gar kein build/ — der Startbefehl "node build"
   findet dann nichts. Jetzt adapter-node, adapter-auto entfällt.

Verifiziert in einer frischen Kopie ohne node_modules, mit derselben Kette
wie im Deployment: npm ci läuft durch, npm run build erzeugt build/index.js,
node build antwortet auf / und /login mit HTTP 200.

Dabei fiel ein dritter Punkt auf, der keine Code-Änderung braucht, aber im
Deployment gesetzt sein muss: PUBLIC_PB_URL wird zur Buildzeit eingesetzt.
Fehlt sie, bricht der Build mit "PUBLIC_PB_URL is not exported by
virtual:env/static/public" ab. Steht jetzt in frontend/README.md und CLAUDE.md.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-06 14:52:00 +02:00
backend fix: pb_migrations nicht mounten — Deployment startete ohne Collections 2026-08-06 14:06:30 +02:00
docs/superpowers chore: Repo-Struktur mit frontend/ und backend/ aufsetzen 2026-08-06 13:16:43 +02:00
frontend fix: Deployment reparieren — adapter-node und Node-Anforderung festschreiben 2026-08-06 14:52:00 +02:00
.gitignore feat: Typen aus der Schema-Migration erzeugen statt aus einer Instanz 2026-08-06 14:20:15 +02:00
CLAUDE.md fix: Deployment reparieren — adapter-node und Node-Anforderung festschreiben 2026-08-06 14:52:00 +02:00
README.md chore: Repo-Struktur mit frontend/ und backend/ aufsetzen 2026-08-06 13:16:43 +02:00
UML_basic.png chore: Repo-Struktur mit frontend/ und backend/ aufsetzen 2026-08-06 13:16:43 +02:00

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.