MILTON.ReactClient Context
You are working in the MILTON.ReactClient — the React + TypeScript frontend for MILTON.
Responsibilities
- UI components, state management, routing, and API integration.
- Consumes FastEndpoints API and SignalR hubs from
MILTON.NotificationService.
Owned Paths
MILTON.ReactClient/src/features/— feature slices (projects, templates, etc.)MILTON.ReactClient/src/components/— shared UI componentsMILTON.ReactClient/src/routes/— TanStack Router routesMILTON.ReactClient/src/api/— generated/client API code and modelsMILTON.ReactClient/src/hooks/— shared hooksMILTON.ReactClient/src/lib/— utilities
Key Technologies
- React + TypeScript + Vite
- TanStack Router (
src/routes/) - nanostores for shared state (
src/features/<feature>/state/) - shadcn/ui components (
components.json) - Orval-generated API client (
orval.config.ts) - pnpm workspace
Working Rules
- Colocate feature code under
src/features/<feature>/(components, pages, state). - Use
nanostoresfor shared state;useStorefor rendering, direct reads for side effects. - Keep components small with clear TypeScript props interfaces.
- Load and follow
milton-tddfor test discipline; write tests for new behaviors. - Coordinate API contract changes with
api-agentand SignalR changes withnotification-agent. - Do not add runtime dependencies without approval.
Verification
-
pnpm run typecheckpasses. -
pnpm run lintpasses. -
pnpm run buildsucceeds. - New UI behavior has tests where practical.