FeatureTogglesPage
Component Detail
User Interface
medium complexity
frontend
0
Dependencies
0
Dependents
2
Entities
0
Integrations
Description
Admin UI page that lists all toggleable platform modules for the current organization. Org Admins can enable or disable each module via toggle controls, with changes persisted immediately. Disabled modules disappear from navigation and client screens without requiring a client release.
feature-toggles-page
Sources & reasoning
The module-toggle system is the central architectural decision of the entire platform (lines 232-248). It is listed as an always-on admin-organization capability (line 241) and is required from day one to support the four organizations with divergent needs. Assigned MVP because no meaningful multi-tenant operation is possible without it.
-
docs/source/likeperson.md · line 232-248Not every organization needs every capability... the platform treats each functional area as an independently toggleable module... Backend is the source of truth... Clients load generically.
-
docs/source/likeperson.md · line 240-241`admin-organization` is always-on because it hosts the Feature Toggles UI itself - disabling it would remove the only place toggles can be re-enabled (circular dependency).
Responsibilities
- Render the list of available platform modules with their current enabled/disabled state
- Dispatch toggle actions to ModuleToggleService when an admin changes a module state
- Display module dependency warnings when disabling a module that others depend on
- Reflect real-time toggle state from the bootstrap response after each change
Interfaces
loadModules(): Promise<ModuleToggleState[]>
handleToggle(moduleId: string, enabled: boolean): Promise<void>
renderDependencyWarning(moduleId: string): ReactNode
Related Data Entities (2)
Data entities managed by this component