Description Control Plane — Super Admin Dashboard
Status: ✅ Complete
Completed
Admin layout with super_admin permission guard
Admin sidebar (Dashboard, Tenants, Audit Logs)
Tenants feature API: create, update, freeze, delete
Tenants DB queries (list, get, create, update, soft delete, count by status)
Admin API route handlers (/api/admin/tenants)
Tenant components: TenantTable, TenantForm, FreezeToggle, FeatureEditor, DeleteTenantButton
Admin pages: dashboard overview, tenant list, new tenant, tenant detail (tabbed)
Audit logging API (features/audit/api/log-action.ts)
Shadcn components installed: table, badge, dialog, select, textarea, dropdown-menu, toast, tabs, switch
Admin Pages
/admin — overview dashboard with tenant count stats (active/frozen/suspended)
/admin/tenants — tenant list with status badges
/admin/tenants/new — create form (auto-slugs from name)
/admin/tenants/[tenantId] — tabbed detail (Overview + status control, Features, Danger Zone)
API Routes
GET /api/admin/tenants — list all tenants
POST /api/admin/tenants — create tenant (+ Stack Auth team)
GET /api/admin/tenants/:id — get tenant detail
PATCH /api/admin/tenants/:id — update tenant (name, slug, features, status)
DELETE /api/admin/tenants/:id — soft delete tenant
Key Files
src/app/admin/layout.tsx — admin layout + guard
src/features/tenants/api/ — create, update, freeze, delete actions
src/features/tenants/db/queries.ts — tenant DB queries
src/features/tenants/components/ — admin UI components
src/features/audit/api/log-action.ts — audit logging
Reactions are currently unavailable
You can’t perform that action at this time.
Control Plane — Super Admin Dashboard
Status: ✅ Complete
Completed
super_adminpermission guard/api/admin/tenants)features/audit/api/log-action.ts)Admin Pages
/admin— overview dashboard with tenant count stats (active/frozen/suspended)/admin/tenants— tenant list with status badges/admin/tenants/new— create form (auto-slugs from name)/admin/tenants/[tenantId]— tabbed detail (Overview + status control, Features, Danger Zone)API Routes
GET /api/admin/tenants— list all tenantsPOST /api/admin/tenants— create tenant (+ Stack Auth team)GET /api/admin/tenants/:id— get tenant detailPATCH /api/admin/tenants/:id— update tenant (name, slug, features, status)DELETE /api/admin/tenants/:id— soft delete tenantKey Files
src/app/admin/layout.tsx— admin layout + guardsrc/features/tenants/api/— create, update, freeze, delete actionssrc/features/tenants/db/queries.ts— tenant DB queriessrc/features/tenants/components/— admin UI componentssrc/features/audit/api/log-action.ts— audit logging