v0.3.0 - UI Improvements & State Reliability
New Features
Navigation Enhancements
- Active-route highlighting - Visual indicator shows which page you're currently on
- Lucide icons - All navbar links now have icons for better visual identification
- Improved navbar spacing - Added padding for better visual balance
CSS Design System
- Design tokens for colors, spacing, radius, shadows, and transitions
- Focus ring styles for improved keyboard accessibility
- Consistent styling across all components
Responsive Layouts
- Dashboard grid adapts to screen size (1/2/3 columns)
- Generator page stacks on mobile screens
- Doctor page uses responsive grid
Real Provider Tests
- Settings page now tests actual AI provider connections
- Settings page now tests actual embedding provider connections
- Replaces previous stub implementations
State Management
- Global cleanup handlers for background tasks on client disconnect
- Improved state isolation between clients
Bug Fixes
TaggingState
- Added missing
set_edit_tags,set_edit_environments,set_edit_instrumentshandlers
UI Fixes
- Fixed operator precedence bug in tagging page button disabled logic
- Fixed Library regenerate confirm dialog Cancel button
- Fixed track table checkbox callbacks to accept optional checked value
Changes
App Configuration
- Consolidated app entrypoints to use consistent orange theme and dark mode
- Dashboard and Doctor
on_loadnow wired at app level - Library stats now use SQLiteManager for consistency
Testing
All 116 tests passing ✅
Files Changed
plexmix_ui/plexmix_ui.py- Consolidated app configurationsrc/plexmix/ui/app.py- Added doctor routesrc/plexmix/ui/components/navbar.py- Icons, active states, paddingsrc/plexmix/ui/states/tagging_state.py- Missing handlerssrc/plexmix/ui/states/settings_state.py- Real provider testssrc/plexmix/ui/states/library_state.py- Cleanup handlerssrc/plexmix/ui/pages/*.py- Responsive grids, bug fixesassets/styles.css- Design tokens, transitionstests/ui/test_states.py- New unit tests
Installation
```bash
pip install plexmix==0.3.0
```
Or update existing installation:
```bash
pip install --upgrade plexmix
```