Two React + Vite + TypeScript apps ship in clients/ — both production-grade, both wired against the API’s auth + multitenancy + realtime out of the box. Pick the right one for your audience: admin is for operators (back-office, support, ops); dashboard is for end users (the people who pay you).
The two apps
- 01/05
Admin console
The operator-facing React + Vite app at clients/admin — users, roles, tenants, impersonation, audits, billing, webhooks, health, notifications.
- 02/05
Tenant dashboard
The end-user-facing React + Vite app at clients/dashboard — catalog, chat, files, tickets, profile, plus per-tenant theming and real-time SignalR + SSE feeds.
- 03/05
Frontend architecture
Shared patterns across the admin + dashboard apps — folder layout, API client, route guards, realtime context, error handling, ProblemDetails parsing.
- 04/05
Per-tenant theming
How the tenant dashboard applies a per-tenant theme — palette, brand assets, typography, layout — pulled live from the Multitenancy module.
- 05/05
Local development
Running the React frontends with Vite HMR, building for production, deploying to static hosts or behind Nginx, runtime config injection patterns.
Quick facts
| clients/admin | clients/dashboard | |
|---|---|---|
| Audience | Operators, support, ops | End users (tenant members) |
| Default port | 5173 | 5174 |
| Pages | Users, Roles, Tenants, Impersonation, Audits, Webhooks, Billing, Health, Notifications, Settings | Catalog, Chat, Files, Tickets, Identity (profile + sessions + 2FA), System, Settings |
| Realtime | SignalR notifications | SignalR (chat + notifications) + SSE feeds |
| Auth | Same JWT bearer + refresh + 2FA flow as the API | Same |
| Theming | Static (admin chrome) | Per-tenant theme from the Multitenancy module |
Both run via npm run dev (Vite dev server with HMR) and build to static assets via npm run build. The kit’s Aspire AppHost orchestrates both alongside the API for one-command local dev.
Related
- Admin console — operator-facing app.
- Tenant dashboard — end-user app.
- Frontend architecture — shared patterns.
- Theming — per-tenant brand customisation.
- Local development — running, building, deploying.