Skip to content

v0.3.0 - UI Improvements & State Reliability

Choose a tag to compare

@izzoa izzoa released this 27 Dec 23:22
· 72 commits to master since this release

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_instruments handlers

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_load now 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 configuration
  • src/plexmix/ui/app.py - Added doctor route
  • src/plexmix/ui/components/navbar.py - Icons, active states, padding
  • src/plexmix/ui/states/tagging_state.py - Missing handlers
  • src/plexmix/ui/states/settings_state.py - Real provider tests
  • src/plexmix/ui/states/library_state.py - Cleanup handlers
  • src/plexmix/ui/pages/*.py - Responsive grids, bug fixes
  • assets/styles.css - Design tokens, transitions
  • tests/ui/test_states.py - New unit tests

Installation

```bash
pip install plexmix==0.3.0
```

Or update existing installation:

```bash
pip install --upgrade plexmix
```