P8-01: Frontend architecture migration to React + TypeScript + Vite #37

Closed
opened 2026-02-19 19:04:52 -05:00 by Rbanh · 3 comments
Owner

Goal:
Replace the monolithic vanilla frontend with a modular React+TS app while preserving feature parity.

Scope:

  • Create frontend-react/ (or in-place migration with clear boundary).
  • Introduce Vite build + dev workflow.
  • Define app shell layout (left/nav, center canvas, right inspector) as reusable components.
  • Port core command bar, toolbar, and panel scaffolding.
  • Keep existing REST API contract unchanged.

Acceptance:

  • App boots in React with current sample loaded.
  • Existing core controls visible and wired (load/reset/import/export/apply).
  • Build/test commands documented and green in CI.
Goal: Replace the monolithic vanilla frontend with a modular React+TS app while preserving feature parity. Scope: - Create `frontend-react/` (or in-place migration with clear boundary). - Introduce Vite build + dev workflow. - Define app shell layout (left/nav, center canvas, right inspector) as reusable components. - Port core command bar, toolbar, and panel scaffolding. - Keep existing REST API contract unchanged. Acceptance: - App boots in React with current sample loaded. - Existing core controls visible and wired (load/reset/import/export/apply). - Build/test commands documented and green in CI.
Rbanh added this to the Phase 8 - React/ELK Core Refactor milestone 2026-02-19 19:05:13 -05:00
Author
Owner

Sprint 1 progress landed in d029e48.

Implemented:

  • New isolated React+TS+Vite app scaffold in frontend-react/.
  • Shell components (TopBar/LeftPanel/CanvasArea/RightInspector).
  • Typed API client for existing backend endpoints (/compile, /analyze, /layout/auto, /layout/tidy).
  • Root command wiring for legacy vs react paths (frontend:legacy:*, frontend:react:*).

Status:

  • Partial completion; parity wiring still pending (state + live canvas + feature parity controls).
Sprint 1 progress landed in `d029e48`. Implemented: - New isolated React+TS+Vite app scaffold in `frontend-react/`. - Shell components (TopBar/LeftPanel/CanvasArea/RightInspector). - Typed API client for existing backend endpoints (`/compile`, `/analyze`, `/layout/auto`, `/layout/tidy`). - Root command wiring for legacy vs react paths (`frontend:legacy:*`, `frontend:react:*`). Status: - Partial completion; parity wiring still pending (state + live canvas + feature parity controls).
Author
Owner

Sprint 2 progress in 5a4e116.

Delivered:

  • App now runs real topbar workflow actions (load sample/compile/analyze/auto-layout/auto-tidy/reset).
  • Existing backend API contract endpoints are called via typed client.
  • React panels are wired to live store state and compile outputs.

Status:

  • In progress (not complete): full parity with legacy UI controls still pending.
Sprint 2 progress in `5a4e116`. Delivered: - App now runs real topbar workflow actions (load sample/compile/analyze/auto-layout/auto-tidy/reset). - Existing backend API contract endpoints are called via typed client. - React panels are wired to live store state and compile outputs. Status: - In progress (not complete): full parity with legacy UI controls still pending.
Author
Owner

Completed by the React migration series (d029e48, 5a4e116) and follow-up integration commits. App shell, controls, and React runtime path are in place.

Completed by the React migration series (`d029e48`, `5a4e116`) and follow-up integration commits. App shell, controls, and React runtime path are in place.
Rbanh closed this issue 2026-02-19 23:29:12 -05:00
Sign in to join this conversation.
No Label
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: Rbanh/schemeta#37
No description provided.