Panel & workflow
The production UI lives in deploy-dock/apps/web (React + Vite). Authenticated routes are nested under ProtectedShell; auth routes use AuthLayout.
In this page
Sidebar navigation
MainLayout defines the same structure users see in the shipped UI:
| Group | Items |
|---|---|
| Overview | Dashboard → / |
| Infrastructure | Servers /servers, Applications /applications, Domains /domains, Databases /databases |
| Management | Files /files, Backups /backups, Runtimes /runtimes |
| Monitoring | Monitoring /monitoring, Logs /logs, Security /security |
| System | Users /users, Templates /templates, Settings /settings |
Key routes
Additional routes include /applications/new, /servers/:id, /applications/:id, /databases/:id, and auth /auth/login, /auth/setup, /auth/forgot-password (see apps/web/src/app/routes.tsx).
API prefix
The dev server proxies /api to the NestJS API. JSON requests hit /api/v1/... (global prefix). See REST API and Swagger at http://127.0.0.1:4000/api/docs during development.
For screen-by-screen behavior and API limitations, see Using the panel docs.