Reference

Interactive components

table, tabs, accordion

table

Sortable, filterable tables

Client-side sortable (per-column) and filterable (row-level text search). sortable: true on a column enables the click-to-sort affordance; filterable: true on the table adds a search box above.

Rows are a list of maps keyed by column key. Sort tries numeric parsing first (stripping $, %, ,) then falls back to string compare.

CustomerACVStageClose date
Acme Corp$480,000Closed Won2026-04-15
Beta Corp$120,000Negotiation2026-05-30
Gamma Inc$850,000Discovery2026-07-10
Delta Labs$45,000Closed Won2026-03-01
- type: table
  filterable: true
  columns:
    - key: customer
      label: Customer
      sortable: true
    - key: acv
      label: ACV
      sortable: true
      align: right     # left | right | center
  rows:
    - customer: Acme Corp
      acv: $480,000
    - customer: Beta Corp
      acv: $120,000
tabs

Tabbed panels

Progressive disclosure. Tab labels as buttons, panels below. First tab shows by default. Each tab's components: can contain anything — including nested tabs or accordions.

High-level pitch lives here.

Built in
1 day
Lines of code
~2,200

Yes — any component, including accordions like this one.

Also supported, but usually a sign you should split pages.

- type: tabs
  tabs:
    - label: Summary
      components:
        - type: markdown
          body: "High-level pitch lives here."
    - label: Details
      components:
        - type: stat_grid
          stats: [...]
accordion

Collapsible sections

Click-to-expand sections. All closed by default. Each item contains any components.

Open an issue or add it — each component is ~30 lines of Rust plus CSS. See src/render/components.rs for the pattern.

Yes — pick dark or light as the base via the theme: key in kazam.yaml, and override any individual token with a colors: map. See the Theming section of the guide.

Yes — kazam build produces plain HTML files. Open them directly with file:// URLs. Nav and interactive components all work locally.

- type: accordion
  items:
    - title: Question 1
      components:
        - type: markdown
          body: Answer content.
    - title: Question 2
      components:
        - type: markdown
          body: Answer content.
Next up

Layout components are the skeleton every page hangs on — sections, columns, dividers, timelines, steps.