1.8 KiB
1.8 KiB
Phase 8 Kickoff: Dual-Run Frontend (Legacy + React)
Purpose
Define how to run the current legacy frontend and the incoming React frontend side-by-side during migration kickoff.
Frontend Paths
- Legacy frontend: served by
src/server.jsathttp://localhost:8787/ - React frontend (target): expected in
frontend-react/(Vite default expected athttp://localhost:5173/)
Commands
- Legacy dev server:
npm run frontend:legacy:dev - Legacy start (non-watch):
npm run frontend:legacy:start - React dev (stub-aware):
npm run frontend:react:dev - React quality stubs:
npm run frontend:react:lintnpm run frontend:react:testnpm run frontend:react:buildnpm run frontend:react:check
If frontend-react/package.json does not exist, lacks the requested script, or frontend-react/node_modules is missing, React commands exit successfully with a deterministic skip message.
Side-by-Side Local Run
- Terminal A:
npm run frontend:legacy:dev - Terminal B:
npm run frontend:react:dev - Verify legacy UI responds on
http://localhost:8787/ - Verify React command behavior:
- pre-scaffold: skip message (expected)
- post-scaffold: starts actual React dev server
Milestone Kickoff Checklist (#37, #38)
#37React migration kickoff commands are exposed in rootpackage.json.#37Dual-run operational doc exists for legacy + React side-by-side local execution.#37CI includes a React-path quality command (frontend:react:check) that is safe before scaffold and active after scaffold.#38Deterministic command wiring established for React quality gates (lint/test/build) via a single stub-aware runner.#38Legacy and React paths are explicitly separated in command names to reduce migration ambiguity.