Key-value entry
Introduction
Section titled “Introduction”KeyValueEntry turns a mapping into an or-key-value table — the right fit when a record stores a dict of sparse attributes (meta blobs, feature flags, settings maps) and you want operators to scan keys beside values without opening a JSON blob.
The entry label still stacks above the table; customize the inner column headers with .key_label / .value_label so the table reads in domain language (Property / Content) instead of generic Key / Value.
Basic key-value entry
Section titled “Basic key-value entry”from almasix.orbit.infolists import KeyValueEntry
KeyValueEntry.make("meta").label("Meta")

Custom column labels
Section titled “Custom column labels”.key_label(...) and .value_label(...) rename the header cells (defaults Key / Value).
KeyValueEntry.make("meta") .label("Meta") .key_label("Property") .value_label("Content")

Empty mapping
Section titled “Empty mapping”An empty dict still renders the table chrome with headers so the slot is obvious on a sparse record. Pair with .placeholder(...) on the shared entry when you would rather show a sentence than an empty table.
KeyValueEntry.make("meta").label("Meta").placeholder("No metadata")

API cheat sheet
Section titled “API cheat sheet”| Method | Notes |
|---|---|
.key_label |
Header for the key column |
.value_label |
Header for the value column |
| Shared chrome | Label, helper, hint — see overview |