Summary
Introduce a new, reusable UI component — codifyiq_group_manager — that lets any app manage authorization groups and assign them to users in a consistent, polished way. Today each project that needs "who belongs to which group" reinvents the screens; this gives us one drop-in, Material Design 3 surface to reuse everywhere.
Motivation
Most of our apps eventually need some form of access control. The common, lightweight shape is simply: a user belongs to one or more groups, and the app derives permissions from that membership. We keep rebuilding that UI ad hoc, with inconsistent look-and-feel and varying quality. A shared component removes the duplicated effort and gives users a familiar experience across products.
Scope
- Manage the group catalog — create, edit, and delete groups, with a clear, searchable list that holds up when the catalog grows.
- Assign groups to a user — pick one or more groups for a given person quickly, with search for when there are many groups.
- Presentation only — the component owns the UX and in-memory state; each app wires it to its own backend/persistence. It does not perform real authorization.
Non-goals (keep it simple, by design)
- No nested/hierarchical groups.
- No separate "roles" concept distinct from groups.
- No opinion about how permissions are stored or enforced server-side.
Intent / quality bar
- Consistent Material Design 3 throughout, using classic, well-understood UI patterns.
- Theme-aware — colors and styling follow each host app's theme automatically (including light/dark), so it looks native wherever it's dropped in.
- Adaptive — works well from mobile widths to large desktop windows, with sensible layout and comfortable content width on big screens.
- Drop-in and composable — usable as a complete screen for the common case, or as smaller building blocks for custom flows.
- Ships as its own independently published package, consistent with the rest of the component suite (own README, changelog, license, example, and tests).
Acceptance criteria
Summary
Introduce a new, reusable UI component —
codifyiq_group_manager— that lets any app manage authorization groups and assign them to users in a consistent, polished way. Today each project that needs "who belongs to which group" reinvents the screens; this gives us one drop-in, Material Design 3 surface to reuse everywhere.Motivation
Most of our apps eventually need some form of access control. The common, lightweight shape is simply: a user belongs to one or more groups, and the app derives permissions from that membership. We keep rebuilding that UI ad hoc, with inconsistent look-and-feel and varying quality. A shared component removes the duplicated effort and gives users a familiar experience across products.
Scope
Non-goals (keep it simple, by design)
Intent / quality bar
Acceptance criteria