[UI Revamp] New dashboard with shadcn/ui, AG Grid, react-router#88
[UI Revamp] New dashboard with shadcn/ui, AG Grid, react-router#88tarasyarema merged 9 commits intomainfrom
Conversation
Initialize new-ui/ with full tech stack and port reusable code from existing ui/: - Vite 7 + React 19 + TypeScript + pnpm - Tailwind CSS v4 with beehive theme (globals.css + AG Grid overrides) - react-router v7 with 14 lazy-loaded route stubs - TanStack React Query with 5s auto-polling - API types (33 interfaces), client (all endpoints), 10 domain hook files - Utility functions (formatRelativeTime, cn(), content preview, auto-scroll) - Theme provider (dark/light mode via localStorage) - Config hook with URL param auto-connect support - Vercel deployment config (SPA rewrites) Verification: pnpm build produces dist/, tsc --noEmit passes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…rk mode toggle Add the full layout shell for the dashboard: - Responsive sidebar with 10 nav sections (Dashboard, Agents, Tasks, Epics, Chat, Services, Schedules, Usage, Config, Repos) using lucide-react icons - Active route highlighting with amber accent border - Logo + "Agent Swarm" branding in sidebar header - Collapsible sidebar with toggle in footer - App header with breadcrumbs, health status indicator (green/red dot), and dark/light theme toggle (Sun/Moon icons) - Mobile-responsive: hamburger menu triggers sidebar Sheet overlay - Page loading skeleton for lazy route transitions - Root layout wiring: SidebarProvider > AppSidebar + SidebarInset > Header + Outlet - shadcn/ui components: sidebar, sheet, button, badge, separator, tooltip, avatar, scroll-area, skeleton, input - TooltipProvider wrapping the app for sidebar tooltip support Verification: pnpm build passes, tsc --noEmit passes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ome page - Config page: API URL + API Key form, connection validation via /health, auto-connect from URL params, disconnect support - Config guard: redirects to /config when not configured - Dashboard: stats bar (hexagonal cells), agent overview cards, active tasks summary, activity feed with color-coded events - Status badge: shared component with status→color mapping, pulse animation for active statuses - Stats bar: honeycomb hex layout with clip-path polygons - 4 new shadcn components: card, label, dialog, alert Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…th AG Grid - AG Grid wrapper: reusable DataGrid component with Quartz theme, pagination, quick filter, loading/empty overlays, column resizing - Agents: list with status filter, row navigation; detail with inline name edit, profile/tasks/usage tabs, SOUL.md/IDENTITY.md viewers - Tasks: list with status/agent filter dropdowns; detail with session logs panel (auto-scroll, 5s polling, follow button), event timeline - Epics: list with progress bars; detail with goal/PRD/plan viewers, progress breakdown, tasks tab - JSON Viewer: collapsible content display for markdown/JSON - 3 new shadcn components: tabs, textarea, select Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…es pages - Chat page: 3-panel layout with channel sidebar, messages, and input - Schedules page: table view with cron/interval display, enabled badges - Schedule detail: info cards, timing, task template viewer - Usage page: summary cards, daily cost line chart, token pie, cost-by-agent bar, agent leaderboard - Config page: expanded with swarm config CRUD (add/edit/delete entries, secret masking) - Repos page: CRUD with add/edit dialogs, auto-clone toggle - Services page: card grid with health status indicators Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…rid optimization - Error boundary: route-level with Try Again + Go Home actions - Empty state: reusable component (icon, title, description, CTA) - Command palette: Ctrl+K search across agents, tasks, epics, quick nav - Keyboard shortcuts: number keys 0-9 for section navigation - Toast notifications: Sonner toaster for mutation feedback - AG Grid optimization: switched from AllCommunityModule to specific modules (874KB vs 1099KB) - Meta tags: OG tags, theme-color, apple-touch-icon - shadcn components: alert-dialog, command (cmdk), sonner Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
@desplega-bot pls make sure ci passes, and also can you post some screenshots of how it looks? Use qa-use using Share a recording so I get an e2e idea pls |
|
On it! I've dispatched two workers in parallel:
Will post results here shortly. |
The new-ui directory has its own tsconfig and dependencies. Without excluding it, the root tsc:check picks up new-ui files and fails on missing module declarations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CI FixRoot cause: The root Fix: Added Verified locally — both |
PR #88 Review — Agent Swarm UI RevampComprehensive review of the new-ui dashboard (92 files, ~14,600 lines). Overall this is solid work — clean architecture, proper lazy loading, good react-query patterns, and passing TypeScript/build checks. I found 2 bugs and 2 dead code files that should be addressed before merge. Checks
Blocking Issues (2)1. ConfigEntryDialog stale state bug ( 2. Chat page ignores Dead Code (2)3. 4. Suggestions (non-blocking)5. No 404 route — Missing 6. Triple-maintained navigation — Routes defined independently in 7. Chat 8. Hardcoded dark theme in chart tooltips — Usage page ( 9. Large chunks — Build warns about 3 chunks > 500 KB: AG Grid (874 KB), main (510 KB), usage/recharts (390 KB). Consider Positive Notes
Verdict: REQUEST_CHANGES — Fix the 2 bugs and clean up the 2 dead files, then this is ready to ship. Reviewed by Reviewer (a09d19a4) |
UI Screenshots - Agent Swarm Dashboard (PR #88)Automated QA screenshots of the new UI from the Agents Tab (Landing Page - Light Mode)Tasks TabEpics TabChat TabServices TabSchedules TabUsage TabConfig TabRepos TabDark Mode (Agents Tab)Settings ModalNotes
🤖 Automated QA by Tester agent (worker-201b92d8) |
- ConfigEntryDialog: add useEffect to sync form state when editEntry prop changes, fixing stale data when clicking different Edit buttons - ChatPage: read channelId from URL params so /chat/:channelId links work - Delete use-swarm-config.ts (duplicate of use-config-api.ts) - Delete content-preview.ts (208 lines, never imported) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
dude the url you tested is the old uo, you should run it locally and browser that one! cc @desplega-bot |
|
Got it — the previous screenshots were from the wrong URL. Re-running the test against the local |
NEW UI Screenshots —
|
|
few notes @desplega-bot
|
|
Thanks for the feedback! Working on all 5 items now:
Will post updated screenshots when ready. |
Theme: restructured CSS to standard Tailwind v4 + shadcn pattern where @theme has light base colors and .dark/.dark * overrides to dark. This fixes the swap caused by dark: variant classes (from shadcn components) conflicting with a dark-by-default @theme base. ThemeProvider now only toggles the .dark class — no .light class needed. Sidebar: pass isActive prop from route matching via useLocation() to SidebarMenuButton, so data-[active=true] styling applies correctly. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>























Summary
Complete rewrite of the Agent Swarm monitoring dashboard as a standalone SPA (
new-ui/directory). Replaces the MUI Joy-based UI with a modern stack while keeping the existing UI intact for a gradual migration.92 files, ~14,600 lines of new code across 6 phases.
Tech Stack
What's Included
Phase 1 — Project Scaffolding
Phase 2 — Layout & Navigation
Phase 3 — Config & Dashboard
Phase 4 — Core Data Pages (AG Grid)
Phase 5 — Secondary Pages
Phase 6 — Polish
Build Stats
pnpm buildpasses cleanly (tsc + vite)Test plan
cd new-ui && pnpm install && pnpm buildsucceedscd new-ui && pnpm tsc --noEmitpasses🤖 Generated with Claude Code