Skip to content

Block catalog

All visible nodes live in spec.blocks. Layout places them by id.

Chrome and navigation

Block Doc
GridViewHeader, GridViewNav, GridViewEntity Header and navigation
GridViewToolbar, GridViewFilters, GridViewActions Toolbar, filters, actions

Data presentation

Block Doc
GridViewTable Tables
GridViewKpi, GridViewCharts KPI and charts
GridViewCards, GridViewGallery, GridViewImage Cards and gallery

Interaction

Block Doc
GridViewForm Forms
GridViewOverlay, GridViewTabs Overlays and tabs
GridViewTemplate, GridViewContent Template and content

Shared block base

Every block inherits:

class GridViewBlockBase:
    id: str
    type: str
    title: str = ""
    extra: Mapping[str, JsonValue] = field(default_factory=dict)
    style: GridViewStyle = field(default_factory=GridViewStyle)
    lazy: GridViewLazyBlock | None = None

Rare options use documented keys in extra (+ strict_unknown_config when enabled).

Registries

Hosts extend behavior through named ids in the spec:

Registry Spec field
Cell renderers GridViewColumn.renderer
Cell editors GridViewColumn.extra.editor
Form validators GridViewValidator.kind="custom"
Commit hooks GridViewTableEdit.commit_callback

Built-in renderers: badge, tag, link, money, progress, date, boolean, image, thumbnail.