Display
Property list
A property panel with no card, no table, and no rules: a fixed label column and a value column, held together by alignment alone. Unset values render muted and are themselves the click target, so completeness is incremental instead of something a form demands up front. Values drawn from a fixed set take a menu and get edited where they sit.
npx shadcn@latest add @minflow/property-listWhere to use it
- Detail panels beside an object: state, owner, dates, tags, environment.
- Anywhere a form would ask for everything at once when the reader only knows half of it.
- Never for the same fields across many records; comparing rows is a table's job, not a property list's.
Variations
Unset values
A freshly created object. Muted placeholders name what could be filled in without implying that anything is missing, and the add control at the header covers properties that do not exist yet.
Read-only summary
When the panel reports rather than edits, such as a deployment record. Drop the handlers and the rows lose their affordances instead of pretending to be clickable.