14. Coverage table
14.1 Staff tab keys (all 42 in ALL_TABS)
Section titled “14.1 Staff tab keys (all 42 in ALL_TABS)”ALL_TABS has 42 keys; PLAN §2’s “41 tabs” undercounts by one. Labels are from TAB_LABELS.
| Tab key | Label | Component | Spec | Section | Layout |
|---|---|---|---|---|---|
platform-dashboard |
Platform dashboard | PlatformDashboardPanel |
longtail | D1 | DashboardLayout |
usage |
Usage & limits | TenantUsagePanel |
longtail | D2 | DashboardLayout |
dashboard |
Dashboard | panels/DashboardPanel |
ux-spec | Staff Home | DashboardLayout |
notifications |
Notifications | panels/NotificationInbox |
longtail | A7 | ListLayout |
requests |
Requests | panels/RequestsPanel |
ux-spec | Requests | ListLayout / DetailLayout |
direct |
Direct handout | DirectLoans |
ux-spec | Direct handout | (core) |
handover |
Job handover | panels/machine/HandoverConsole |
longtail | A17 | ListLayout |
inventory |
Inventory | panels/Inventory |
ux-spec | Inventory | ListLayout / DetailLayout |
needsfix |
To-be-fixed | panels/NeedsFixShelf |
longtail | A6 | ListLayout |
categories |
Categories | panels/Categories |
longtail | A15 | ListLayout |
machines |
Machines | panels/MachinesPanel |
ux-spec (+ longtail B5 for service-console tab bodies) | Machines | (core) DetailLayout |
events |
Events | EventsPanel |
ux-spec (+ longtail §13 note: collaboration inbox → callout) | Events | (core) |
organized |
Organized events | panels/OrganizedEventsPanel |
longtail | A11 | ListLayout |
bookings |
Bookings | BookingsPanel |
ux-spec | Bookings | (core) |
members |
Members | MembersPanel |
ux-spec | Members | (core) |
cards |
Member cards | panels/MemberCardsPanel |
longtail | A12 | ListLayout |
tobuy |
To Buy | panels/ProcurementPanel |
longtail | A5 | ListLayout |
transfers |
Transfers | panels/StockTransferPanel |
longtail | A3 | ListLayout + FlowLayout(dialog) |
stocktake |
Stocktake | panels/StocktakeSessionPanel |
longtail | A4, B2 | ListLayout / DetailLayout |
containers |
Containers | panels/ContainersPanel |
longtail | A16, B3 | ListLayout / DetailLayout(drawer) |
ledger |
Ledger | panels/Ledger |
longtail | A2 | ListLayout |
reports |
Reports | panels/OperationsReports |
ux-spec | Reports | (core) |
accountability |
Accountability | panels/AccountabilityPanel |
longtail | A9 | ListLayout |
warranty |
Warranties | panels/WarrantyPanel |
longtail | A10 | ListLayout |
bulk |
Bulk import | panels/BulkImport |
longtail | E1 | FlowLayout |
qr |
QR Tools | panels/QrTools |
longtail | E2 | ListLayout / DetailLayout |
scanner |
Scanner | panels/ScannerPanel |
longtail | §10 “Staff Scanner tab” | ListLayout + ScanWorkbench |
api |
API access | ApiClientsPanel |
longtail | C1 | SettingsLayout |
settings |
Settings | MakerspaceSettingsPanel |
ux-spec | Makerspace settings | (core) SettingsLayout |
emailtemplates |
Email templates | panels/EmailTemplatesPanel |
longtail | A18, B1 | ListLayout / DetailLayout |
users |
Users | panels/Users |
ux-spec (+ longtail E3 for Create makerspace) | Staff & roles | (core) |
platform |
Platform settings | PlatformEmail/SocialAuth/StripeConnect |
longtail | C3 | SettingsLayout |
audit |
Audit log | panels/AuditLog |
ux-spec | Audit log | (core) |
devices |
Devices | panels/DevicesPanel |
longtail | A13 | ListLayout |
email-logs |
Delivery logs | panels/DeliveryLogPanel |
longtail | A8 | ListLayout |
payments |
Payments | PaymentsPanel |
longtail | A1 | ListLayout |
organizations |
Organizations | panels/OrganizationsPanel |
longtail | C5 | DashboardLayout(index) / SettingsLayout |
organization-analytics |
Organization analytics | panels/OrganizationAnalyticsPanel |
longtail | D3 | DashboardLayout |
modules |
Modules | ModulesPanel |
longtail | C2 | SettingsLayout |
exports |
Data export | DataExportsPanel |
longtail | A14 | ListLayout |
backups |
Backup & restore | BackupRestorePanel |
longtail | C4 | SettingsLayout |
migration |
Tenant migration | TenantMigrationPanel |
longtail | E4 | FlowLayout |
Totals: 12 tabs in ux-spec.md, 30 in this doc, 42 in all.
14.2 Routes (AppRoutes.tsx, both modes)
Section titled “14.2 Routes (AppRoutes.tsx, both modes)”| Route (single · central) | Component | Spec | Section | Layout |
|---|---|---|---|---|
/ · /m/:slug → FamilyHome → inventory/events/bookings/machines/membership |
per publicHome() |
ux-spec (catalogue, event, member home), longtail (machines G3, bookings G4) | — | PublicLayout |
FamilyHome error / “No public programme” |
AppRoutes.FamilyHome |
longtail | F10 | PublicLayout |
/ (central) |
LandingPage |
longtail | G1 | PublicLayout |
/about |
AboutPage |
longtail | G2 | PublicLayout |
/o/:organizationSlug |
PublicOrganizationPage |
longtail | G8 | PublicLayout |
/items/:itemId · /m/:slug/items/:itemId |
PublicItemPage |
ux-spec | Public item | PublicDetailLayout |
/checkout · /m/:slug/checkout |
PublicSelfCheckoutPage |
longtail | G10 | PublicLayout + FlowLayout body |
/events · /m/:slug/events |
PublicEventsPage |
ux-spec if covered, else longtail | G5 | PublicLayout |
/events/:publicToken · /m/:slug/events/:publicToken |
PublicEventDetailPage |
ux-spec | Public event page | PublicDetailLayout |
/events/:publicToken/feedback · /m/:slug/…/feedback |
PublicEventFeedbackPage |
longtail | G9 | PublicLayout / CenteredCardLayout |
/event-check-in/:stationToken · /m/:slug/event-check-in/:stationToken |
EventCheckInStationPage |
longtail | I1 | KioskLayout |
/machines · /m/:slug/machines |
PublicMachinesPage |
longtail | G3 | PublicLayout |
/bookings · /m/:slug/bookings |
PublicBookingsPage |
longtail | G4 | PublicLayout / PublicDetailLayout |
/print · /m/:slug/print |
PublicPrintRequestPage |
longtail | G6 | PublicDetailLayout |
/member · /m/:slug/member (overview, sign-in) |
MemberArea |
ux-spec | Member home / Member sign-in | AppShell / AuthLayout |
/member/:memberTab · /m/:slug/member/:memberTab — loans |
MemberArea |
longtail | H1 | AppShell + ListLayout |
— bookings |
MemberArea → MyBookings |
longtail | H2 | AppShell + ListLayout |
— events |
MemberArea → activity + PartnerEvents |
longtail | H3 | AppShell + ListLayout |
— payments |
MemberArea → MemberPayments |
longtail | H4 | AppShell + ListLayout |
— inbox |
MemberArea → notifications |
longtail | H5 | AppShell + ListLayout / SettingsLayout |
— account-portal |
MemberArea → profile, card, directory, referrals |
longtail | H6 | AppShell + SettingsLayout |
— overview |
MemberArea |
ux-spec | Member home | AppShell + DashboardLayout |
/member/account · /m/:slug/member/account |
MemberAccountPage |
longtail | C6 | AppShell + SettingsLayout |
/member/archived |
ArchivedPayments |
longtail | G11 | PublicLayout |
/stats · /m/:slug/stats |
PublicStatsPage |
longtail | G7 | PublicLayout |
/reset-password |
ResetPasswordPage |
longtail | E5 | CenteredCardLayout |
/mfa |
MfaAccountPage |
longtail | C7 | CenteredCardLayout |
/staff-invitations/accept |
StaffInvitationAcceptPage |
ux-spec | Invitation accept | CenteredCardLayout |
/organization-invitations/redeem/:token |
OrganizationInvitationRedeemPage |
longtail | F5 | CenteredCardLayout |
/admin/* · /m/:slug/admin/* (sign-in) |
StaffApp → LoginPanel |
ux-spec | Staff sign-in | AuthLayout |
/admin/* gates: MFA, change password, quarantine, access denied, picker, loading |
StaffApp |
longtail | F1–F4, F7, D4 | CenteredCardLayout / DashboardLayout |
/admin/{tab} |
StaffWorkspace → tab |
per 14.1 | — | AppShell + per 14.1 |
/guest-admin/* |
StaffApp guestOnly |
same as /admin/* (narrow tab set, same layouts) |
— | — |
/scanner |
ScannerPage |
longtail | I3 | KioskLayout |
/kiosk/:stationToken · /m/:slug/kiosk/:stationToken |
KioskStationPage |
ux-spec | Kiosk station | KioskLayout |
/kiosk/:slug (central) |
PublicDeskKioskPage |
longtail | I2 | KioskLayout |
/superadmin (central) |
SuperadminPage → StaffApp |
same as /admin/* (D4 picker) |
D4 | — |
* |
NotFoundPage |
longtail | F6 | CenteredCardLayout |
(static) /member-pwa/offline.html |
PWA offline | longtail | I4 | KioskLayout (static mirror) |
14.3 Non-route surfaces
Section titled “14.3 Non-route surfaces”| Surface | Component | Spec | Section |
|---|---|---|---|
| Command palette | CommandPalette |
longtail | J1 |
| Job tray | components/ui/JobTray |
longtail | J2 |
| Setup checklist | SetupChecklist |
longtail (coordinate with core Dashboard) | J3 |
| Create makerspace wizard | usersModals/CreateMakerspaceModal |
longtail | E3 |
| MFA challenge (inside staff sign-in) | auth/MfaFlow |
longtail | F2 |
| Panel error boundary | StaffPanelErrorBoundary |
longtail | F9 |
| Payment dialogs | SettlementDialog, PaymentRefundDialog, RefundReceiptAmendDialog |
longtail | A1, J4 |
| Payment reconcile actions (embedded in bookings/events/admissions) | PaymentReconcileActions |
host screen’s spec (core); restyle per A1 dialogs | A1 |
| Event collaboration inboxes (inside Events) | CollaborationInbox, EventSeriesCollaborationInbox |
ux-spec Events page; recommended as a yellow callout “{n} spaces invited you to co-host” → review list | §13 |
| Integration health (inside Settings) | IntegrationHealthPanel |
ux-spec (Settings) | — |
| Machine service / printer consoles (inside machine type) | MachineServiceConsole, PrinterServiceConsole |
longtail | B5 |
Part of UX spec: long-tail screens (Space Works UX across all of SpaceWorks), published from docs/ux-screens-longtail.md. Edit it there.