Permissions Matrix

card-ui table-ui check-ui description-list-ui tag-ui

The full RBAC grid — capabilities (rows) × roles (columns), check-mark cells indicating which role grants which capability. Two shapes: an editable grid for custom roles (admin authoring), and a read-only summary card showing one role's permissions in plain language.

When to use

Reach for the matrix when the role count exceeds the rich-picker sweet spot (~5) or when permissions are configurable. For built-in roles only, the summary view is enough — the matrix is the authoring surface, the summary is the runtime surface.

Editable matrix

Capability per row, role per column, check-ui in each cell. Built-in roles (Viewer / Member / Admin / Owner) render disabled — they reflect the role's permissions but can't be edited from this surface. The Custom column is the authoring affordance: cells there toggle freely and save on change.

Permissions Changes save automatically

Read-only role summary

One card per role; description-list-ui with capability category as term, list of capabilities as description. Inline tag indicates whether the role is built-in or custom.

Admin Built-in role · 3 members Built-in
Content Read · Comment · Edit own Members Manage members (invite, change role, remove) Workspace All settings except deletion (Owner only)

Composition rules

See also