Commit Graph

4 Commits

Author SHA1 Message Date
Thomas Richter
84ad332737 fix(deploy): resolve Docker startup and CSRF issues
- Rename TASKPLANER_DATA_DIR to DATA_DIR (avoid adapter-node envPrefix conflict)
- Add TASKPLANER_ORIGIN for CSRF protection in docker-compose.yml
- Add automatic database schema initialization on startup
- Add Playwright E2E tests for Docker deployment verification
- Update .env.example with correct variable names

Fixes container restart loop and 403 errors on form submission.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 15:54:44 +01:00
Thomas Richter
d7c7e9448d feat(01-02): add data directory, server hooks, and verification page
- Create data/ directory with attachments/ subdirectory and .gitkeep files
- Update .gitignore to track .gitkeep but ignore database files
- Server hooks initialize database on first request
- Page server load fetches entries and creates test entry if none exist
- Verification page shows database status, entry count, and recent entries
2026-01-29 04:38:44 +01:00
Thomas Richter
63c5e4bddc feat(01-01): configure Drizzle schema with entries table
- Schema with unified entries table (task/thought types)
- Fields: id, title, content, type, status, pinned, dueDate, timestamps
- Database connection with WAL mode
- Drizzle kit scripts (db:generate, db:migrate, db:push, db:studio)
- Database file at ./data/taskplaner.db
2026-01-29 04:34:14 +01:00
Thomas Richter
3a2e0f2e01 feat(01-01): create SvelteKit project with dependencies
- SvelteKit minimal template with TypeScript
- Tailwind CSS v4 with @tailwindcss/vite plugin
- ESLint and Prettier for code quality
- Dependencies: better-sqlite3, drizzle-orm, nanoid, zod
- Dev server runs on localhost:5173
2026-01-29 04:32:54 +01:00