15 Commits

Author SHA1 Message Date
m3mo
8c837ec9d1 Update router and DI for offline-first flow
- Add setup and onboarding routes to router
- Implement redirect logic for setup, onboarding, and mode checks
- Register local database and task datasource in DI container
- Add mode-aware task repository factory
2026-02-03 14:22:19 +01:00
m3mo
04863ff008 Add setup and onboarding screens
- Create SetupPage for choosing local or online mode
- Create OnboardingPage with 3-slide tutorial
- Explain Eisenhower Method and ALPEN planning approach
2026-02-03 14:21:58 +01:00
m3mo
ece34acd85 Add local task datasource and repository
- Create TaskLocalDataSource for Drift database operations
- Implement LocalTaskRepositoryImpl with same interface as remote
- Support full CRUD operations for offline task management
2026-02-03 14:21:40 +01:00
m3mo
ccc7d544db Add Drift SQLite database for local task storage
- Create AppDatabase with Tasks table
- Add CRUD operations for local task persistence
- Include generated database code
2026-02-03 14:21:07 +01:00
m3mo
ceef4f4c72 Add offline-first mode support to settings
- Add AppMode enum (local, online)
- Extend settings datasource with mode, setup, and onboarding flags
- Update settings viewmodel with mode helpers and persistence
2026-02-03 14:20:49 +01:00
m3mo
3c3da50a54 Fix backend deployment configuration
- Add psycopg2-binary for PostgreSQL database driver
- Update nginx config for HTTP-only access on IP address
2026-02-03 14:20:24 +01:00
m3mo
3c513594ba Add Linode server deployment package
- Create Dockerfile for backend with Python 3.12 and gunicorn
- Add docker-compose.yml with PostgreSQL, backend, nginx, certbot
- Configure nginx reverse proxy with SSL and rate limiting
- Add deployment scripts: deploy.sh, backup-db.sh, setup-ssl.sh
- Include environment template and deployment documentation
2026-02-02 22:58:28 +01:00
m3mo
d8164be49a Add user authentication to Flutter frontend
- Create auth feature with Clean Architecture (domain/data/presentation)
- Add login and register pages with form validation
- Implement secure token storage with flutter_secure_storage
- Create AuthenticatedClient for automatic Bearer token headers
- Add AuthViewModel for global auth state management
- Update router with auth guards (redirect to login if not authenticated)
- Add logout option to settings page
- Update TaskRemoteDataSource to use authenticated client
- Add auth-related localization strings (EN/DE)
2026-02-02 22:58:07 +01:00
m3mo
911f192c38 Add JWT-based user authentication to backend
- Create User model with bcrypt password hashing
- Add auth routes: register, login, refresh, me
- Implement JWT access and refresh tokens
- Add get_current_user dependency for protected routes
- Update Task model with user_id foreign key for data isolation
- Update TaskService to filter tasks by authenticated user
- Add auth configuration (secret key, token expiry)
2026-02-02 22:57:38 +01:00
m3mo
5cd79e096d Improve touch targets with 48dp minimum size for mobile
- Enlarge calendar priority dots to 10px with pulsing animation
- Increase task tile checkbox and menu button containers to 48x48
- Add proper minVerticalPadding to task tiles (72dp height)
- Update filter chips with MaterialTapTargetSize.padded
- Increase navigation buttons to 48x48 with 28px icons
- Update task form with 48dp height segmented button
2026-02-02 22:57:17 +01:00
m3mo
da873afae0 Add calendar task indicators with priority colors and animation
- Fix calendar navigation using ValueKey to force rebuild
- Add colored dots on calendar days with tasks (red/orange/green)
- Show highest priority of incomplete tasks for each day
- Add subtle pulsing animation to task indicators
- Load tasks for visible month when calendar opens
2026-02-02 21:40:47 +01:00
m3mo
864560ef2e Fix calendar navigation, task deletion, and language defaults
- Add date parameter support to DailyAgendaPage for calendar navigation
- Add popup menu to task tile with delete and reschedule options
- Set default locale to English when none is saved
- Update API base URL comment for desktop vs Android
2026-02-02 21:07:27 +01:00
m3mo
820b35f5e6 Fix backend deprecation warnings and duplicate index
- Remove duplicate index definition in Task model
- Update Query regex to pattern parameter
- Use ConfigDict instead of class Config in Pydantic
2026-02-02 20:51:41 +01:00
m3mo
f121df50f1 Fix localization imports and build issues
- Update localization imports to use package path
- Remove unused provider import from main.dart
- Fix default test file
- Refactor settings dialogs to use Radio widget
2026-02-02 20:48:42 +01:00
m3mo
cb308bbf68 Initial project setup with Clean Architecture
- Flutter frontend with Provider state management
- FastAPI backend with SQLAlchemy ORM
- Internationalization support (EN/DE)
- Clean Architecture folder structure
- GoRouter for navigation
- GetIt for dependency injection
2026-02-02 16:43:37 +01:00