Migrate: PocketBase → SvelteKit + better-sqlite3 + JWT
Vollständige Migration weg von PocketBase. Neuer Stack:
- better-sqlite3 (WAL-Mode, direkte SQLite-Abfragen)
- jose (JWT HS256, 30 Tage Laufzeit)
- bcryptjs (Passwort-Hashing, cost 12)
Neue Dateien:
- src/lib/server/db.ts → SQLite-Singleton + Schema + Helpers
- src/lib/server/auth.ts → JWT sign/verify, bcrypt, Bearer-Token
- src/lib/user.ts → Svelte-Store (ersetzt pb.authStore)
- src/lib/api.ts → fetch()-Wrapper (ersetzt pb.collection())
- src/app.d.ts → App.Locals TypeScript-Deklaration
- 30 neue API-Routes unter src/routes/api/
Entfernt:
- Abhängigkeit von pocketbase npm-Paket (bleibt im package.json bis
alle Referenzen bereinigt sind)
- PocketBase-Container aus docker-compose.yml
- Migrations und Hooks aus Deploy-Pipeline
Docker: Ein einziger Container, SQLite-Volume unter /data/
Makefile: PocketBase-spezifische Targets entfernt
seed.js: Komplett neu für neue REST-API