Command-first frontend facade for the Darpan browser pilot.
- Host migrated module screens in
darpan-uiwhile backend screens remain in parallel during cutover. - Consume authenticated facade contracts from
darpan-backend(service/facade/**). - Keep custom UI/PWA behavior out of backend
screen/**,template/**, andtheme-library/**.
darpan-ui: all custom UI, PWA shell, and browser interaction flows.darpan-backend: Moqui backend contracts, business logic, and reconciliation processing only.
- Vue 3
- TypeScript (strict)
- Vite
- ESLint (flat config)
- Vitest
Set environment variables in .env or CI environment:
# Optional in local dev. If omitted, darpan-ui uses same-origin /rpc/json with Vite proxy.
# VITE_DARPAN_API_BASE_URL=http://localhost:8080
# VITE_DARPAN_RPC_URL=http://localhost:8080/rpc/json
VITE_DARPAN_UI_MODE=pilot
VITE_DARPAN_AUTH_BYPASS=falseFor local UI-only prototyping without backend login, set:
VITE_DARPAN_AUTH_BYPASS=truenpm install
npm run dev
npm run check
npm run build
npm run previewDefault local URL: http://localhost:5173.
/login(initial screen)/(module hub)/connections/llm/connections/sftp/connections/netsuite/auth/connections/netsuite/endpoints/connections/read-db/schemas/library/schemas/infer/schemas/editor/:jsonSchemaId/roadmap/reconciliation(roadmap card for upcoming module rollout)
- During phased cutover, pass
?legacy=1when opening migrated routes from backend links to display migration banner context. - Keep backend and darpan-ui routes in parallel until parity sign-off, then retire legacy backend screens in the following release.
- API contracts remain owned by
darpan-backend/runtime/component/darpan/service/facade/**.