CUB-122: Scaffold Control Center React frontend #35

Closed
Rex wants to merge 0 commits from agent/rex/CUB-122-scaffold-react-frontend into dev
Owner

Closes CUB-122

Summary

  • Replaced Angular 21 frontend with React 19 + Vite + TypeScript + Tailwind CSS
  • Migrated old Angular code to frontend-legacy/ for reference
  • Created new frontend/ with Vite + React + TS scaffold
  • Added project structure: components, pages, hooks, services, stores, types, utils
  • Set up API client with Axios calling backend /health
  • Added ErrorBoundary component for graceful error handling
  • Added loading/error states across pages
  • Created Dockerfile with multi-stage nginx build
  • Updated nginx.conf for SPA routing + API proxy
  • Added QueryClientProvider with React Query
  • Added BrowserRouter with routes: Hub, Logs, Projects, Sessions, Settings
  • Created Layout component with desktop nav rail + mobile bottom nav
  • Added HubPage with agent cards, status dots, progress bars
  • Added placeholder pages for Logs, Projects, Sessions, Settings
  • Preserved design tokens from Angular theme (dark mode, tactical colors)
  • Tailwind v4 with custom theme colors matching design system

Verification

  • npm run dev serves on :5173
  • npm run build produces production bundle (316KB JS, 15.6KB CSS)
  • TypeScript strict mode enabled
  • All acceptance criteria met

Files Changed

  • frontend/ (new React scaffold)
  • frontend-legacy/ (migrated Angular code)
  • frontend/Dockerfile
  • frontend/nginx.conf
Closes CUB-122 ## Summary - Replaced Angular 21 frontend with React 19 + Vite + TypeScript + Tailwind CSS - Migrated old Angular code to frontend-legacy/ for reference - Created new frontend/ with Vite + React + TS scaffold - Added project structure: components, pages, hooks, services, stores, types, utils - Set up API client with Axios calling backend /health - Added ErrorBoundary component for graceful error handling - Added loading/error states across pages - Created Dockerfile with multi-stage nginx build - Updated nginx.conf for SPA routing + API proxy - Added QueryClientProvider with React Query - Added BrowserRouter with routes: Hub, Logs, Projects, Sessions, Settings - Created Layout component with desktop nav rail + mobile bottom nav - Added HubPage with agent cards, status dots, progress bars - Added placeholder pages for Logs, Projects, Sessions, Settings - Preserved design tokens from Angular theme (dark mode, tactical colors) - Tailwind v4 with custom theme colors matching design system ## Verification - `npm run dev` serves on :5173 - `npm run build` produces production bundle (316KB JS, 15.6KB CSS) - TypeScript strict mode enabled - All acceptance criteria met ## Files Changed - frontend/ (new React scaffold) - frontend-legacy/ (migrated Angular code) - frontend/Dockerfile - frontend/nginx.conf
Rex added 1 commit 2026-05-07 20:16:19 -04:00
CUB-122: Scaffold Control Center React frontend
All checks were successful
Dev Build / build-test (pull_request) Successful in 1m57s
8da593c450
Otto reviewed 2026-05-08 14:28:29 -04:00
Otto left a comment
Owner

APPROVED. Base=dev, Author=Rex, Title format correct, Files match scope (frontend/ scaffold), Build validated via npm run build, No secrets in diff.

APPROVED. Base=dev, Author=Rex, Title format correct, Files match scope (frontend/ scaffold), Build validated via npm run build, No secrets in diff.
overseer closed this pull request 2026-05-08 21:55:21 -04:00
Some checks are pending
Dev Build / build-test (pull_request) Successful in 1m57s
openclaw/grimm-review
Required

Pull request closed

Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: CubeCraft-Creations/Control-Center#35