2 Commits

Author SHA1 Message Date
joakim 41795d1827 feat(frontend): setup frontend foundation
- Install dependencies: date-fns, @vite-pwa/sveltekit, workbox-window
- Configure Vite with PWA support and manifest
- Update SvelteKit config for static adapter with fallback
- Create environment files (.env, .env.example, .env.production)
- Create directory structure for lib, components, routes
- Add JSDoc type definitions for Task, User, AuthTokens, etc.
- Add utility functions: storage (localStorage wrapper), uuid, dates, sync-queue
- Configure PWA with icons, theme colors, and caching strategies
2026-01-06 15:43:39 +01:00
joakim 4eb18388db feat(backend): add OAuth2/JWT authentication support
- Add OAuth2 client for Authentik integration
- Implement JWT token generation and validation
- Add refresh token support with database storage
- Update database schema with oauth_subject, oauth_provider, and refresh_tokens table
- Create auth package with config, jwt, oauth, and token management
- Add OAuth endpoints: /auth/login, /auth/callback, /auth/refresh, /auth/logout
- Update AuthMiddleware to support both JWT and API key authentication
- Add user helper functions for OAuth user creation and retrieval
- Add .env.example with OAuth configuration template

API keys still work for CLI compatibility while JWT tokens support web/mobile clients.
2026-01-06 15:42:03 +01:00