-
Notifications
You must be signed in to change notification settings - Fork 106
Open
Description
Control Plane — Super Admin Dashboard
Status: ✅ Complete
Completed
- Admin layout with
super_adminpermission 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 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 tenant
Key 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
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels