feat: complete user config management

- Add theme support with dark/light/system modes
- Add useTheme hook for applying user config theme
- Update router to use SettingsPage
- Update app-shell to apply theme on load
- Add CSS variables for dark theme
- Fix mypy errors in user_config.py
- Quality gates pass: ruff, mypy, typecheck, lint, build
This commit is contained in:
Fusion
2026-05-18 15:58:01 +02:00
parent 9f7a750898
commit 94254ee3fd
18 changed files with 463 additions and 171 deletions
@@ -0,0 +1,25 @@
## Why
Users need to store preferences and settings (theme, editor, git identity) that persist across sessions.
## What Changes
- Add UserConfig model for JSONB key-value storage
- Add API endpoints for get/update user config
- Add frontend settings page
- Apply theme preference in frontend
## Capabilities
### New Capabilities
- `user-config-management`: Store and manage user preferences
### Modified Capabilities
- `user-profile`: Include config in profile responses
## Impact
- New database model and migration
- New API endpoints under /users/me/config
- New frontend settings page
- Theme application in AppShell