feat: UI design system - sidebar layout, workspace system, and shell redesign #77

Merged
chihlasm merged 20 commits from feat/ui-design-system into main 2026-02-16 03:45:19 +00:00
chihlasm commented 2026-02-15 15:00:26 +00:00 (Migrated from github.com)

Summary

  • New app shell layout: CSS Grid with persistent sidebar (260px) + topbar (56px), replacing the old top-nav layout
  • Workspace system: Backend model, migration, API + frontend store/switcher for organizing flows by workspace context
  • Sidebar: Collapsible nav with workspace switcher, category list, tag cloud, active session badge, and collapse/expand toggle (persisted)
  • Command palette (⌘K): Global search across flows and sessions with keyboard navigation
  • Quick Launch: Action palette (Zap button) with shortcuts to create flows, view sessions, and launch recent flows
  • Activity panel: Bell icon notification dropdown showing recent session activity
  • Dashboard rewrite: QuickStartPage rebuilt with stat cards, filter bar, sessions panel, and flow list
  • Sidebar → library filtering: Category/tag clicks in sidebar navigate to /trees with URL params, bidirectional sync
  • Workspace CRUD: Create workspace modal with icon picker and auto-slug generation

Test plan

  • Verify sidebar renders with workspace switcher, nav items, categories, tags
  • Test sidebar collapse/expand toggle persists across page loads
  • Test ⌘K / Ctrl+K opens command palette, search returns results, keyboard nav works
  • Test Quick Launch (Zap) shows actions and recent flows
  • Test Bell icon shows activity panel with recent sessions
  • Test clicking sidebar categories/tags navigates to /trees with correct filters
  • Test workspace create modal creates workspace and refreshes list
  • Test mobile hamburger drawer still works
  • Run npm run build — passes clean
  • Run backend migration alembic upgrade head for workspace tables

🤖 Generated with Claude Code

## Summary - **New app shell layout**: CSS Grid with persistent sidebar (260px) + topbar (56px), replacing the old top-nav layout - **Workspace system**: Backend model, migration, API + frontend store/switcher for organizing flows by workspace context - **Sidebar**: Collapsible nav with workspace switcher, category list, tag cloud, active session badge, and collapse/expand toggle (persisted) - **Command palette (⌘K)**: Global search across flows and sessions with keyboard navigation - **Quick Launch**: Action palette (Zap button) with shortcuts to create flows, view sessions, and launch recent flows - **Activity panel**: Bell icon notification dropdown showing recent session activity - **Dashboard rewrite**: QuickStartPage rebuilt with stat cards, filter bar, sessions panel, and flow list - **Sidebar → library filtering**: Category/tag clicks in sidebar navigate to /trees with URL params, bidirectional sync - **Workspace CRUD**: Create workspace modal with icon picker and auto-slug generation ## Test plan - [ ] Verify sidebar renders with workspace switcher, nav items, categories, tags - [ ] Test sidebar collapse/expand toggle persists across page loads - [ ] Test ⌘K / Ctrl+K opens command palette, search returns results, keyboard nav works - [ ] Test Quick Launch (Zap) shows actions and recent flows - [ ] Test Bell icon shows activity panel with recent sessions - [ ] Test clicking sidebar categories/tags navigates to /trees with correct filters - [ ] Test workspace create modal creates workspace and refreshes list - [ ] Test mobile hamburger drawer still works - [ ] Run `npm run build` — passes clean - [ ] Run backend migration `alembic upgrade head` for workspace tables 🤖 Generated with [Claude Code](https://claude.com/claude-code)
railway-app[bot] commented 2026-02-15 15:06:13 +00:00 (Migrated from github.com)

🚅 Deployed to the patherly-pr-77 environment in selfless-grace

Service Status Web Updated (UTC)
hopeful-liberation Success (View Logs) Web Feb 16, 2026 at 3:33 am
patherly Success (View Logs) Web Feb 16, 2026 at 3:32 am
<!-- railway-bot-comment-version=2 --> <!-- railway-project-id="22b9b58c-271b-42e5-a10e-6fdec8d00134" railway-project-name="selfless-grace" --> 🚅 Deployed to the [patherly-pr-77](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134?environmentId=38064aef-ede8-40fd-9ee5-25facd2ebe5e) environment in **[selfless-grace](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134)** | **Service** | **Status** | **Web** | **Updated** (UTC) | | :--- | :--- | :--- | :--- | | hopeful-liberation | ✅ Success ([View Logs](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134/service/e1db2ee3-d241-4f45-abe4-c9c5fdf483d5?id=bfdbb874-c4e5-48d2-9d30-f9d2accc51bc&environmentId=38064aef-ede8-40fd-9ee5-25facd2ebe5e)) | [Web](https://hopeful-liberation-patherly-pr-77.up.railway.app) | Feb 16, 2026 at 3:33 am | | patherly | ✅ Success ([View Logs](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134/service/95f556ff-5264-4116-a0c2-618a2fc53ba4?id=71e82fd2-33f4-4dac-941c-051a695ba9b5&environmentId=38064aef-ede8-40fd-9ee5-25facd2ebe5e)) | [Web](https://patherly-patherly-pr-77.up.railway.app) | Feb 16, 2026 at 3:32 am |
Sign in to join this conversation.