Skip to content
fullstackhero

Guide

Overview

Two React + Vite + TypeScript apps ship with the kit — an admin console for operators and a tenant dashboard for end users.

views 0 Last updated

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

Quick facts

clients/adminclients/dashboard
AudienceOperators, support, opsEnd users (tenant members)
Default port51735174
PagesUsers, Roles, Tenants, Impersonation, Audits, Webhooks, Billing (plans + invoices), Health, Notifications, SettingsOverview, Activity, Catalog, Chat, Files, Tickets, Invoices, Subscription, Identity (users / roles / groups), System (sessions, trash, audits, health), Settings
RealtimeSignalR notificationsSignalR (chat + notifications + presence) + an SSE activity feed
AuthSame JWT bearer + refresh flow as the APISame
ThemingKit palette + per-operator light/darkPer-user appearance (mode, accent, font, density); per-tenant TenantTheme lives in the Multitenancy module
Inactivity sign-out10 min idle + 60 s warning (config.json)20 min idle + 60 s warning (config.json)

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. Both read runtime configuration from /config.json at boot — no VITE_* build-time env baked into the bundle — so a single build artifact promotes across environments.