Line 1 โ metadata
{"type":"meta","v":4,"title":"My Deck",
"subtitle":"...","codename":"mybox",
"version":"v1.0","language":"en",
"palette":{"a":"#0A2766","b":"#B83030"},
"theme":{"light":{"--accent":"#1E7A3C"}}}
"v":2 enables format-2 data visualisation plots. "v":3 enables two-level patterns (layout + pattern). "v":4 enables podcast mode. Omit or 1 for the original 14-pattern format.
Lines 2..N โ cards
{"set":0,"layout":"title","pattern":"cover",
"tag":"...","title":"...","subline":"...",
"content":{...},"note":"..."}
Card fields
| field | meaning |
|---|---|
| set | set bucket (int or string) |
| layout | title ยท full ยท dual-hybrid ยท fulldual-hybrid |
| pattern | see patterns below |
| variant | variant id within the pattern |
| tag | top-left small tag (uppercase) |
| title | large display title |
| subline | small mono caption under title |
| note | footer note block |
| content | pattern-specific payload |
| left | v3 hybrid: {pattern, content} for left column |
| right | v3 hybrid: {pattern, content} for right column |
Pattern ยท variant matrix
| pattern | variants |
|---|---|
| cover | default ยท stat-first ยท centered |
| table | default ยท transposed ยท sorted |
| bar | default ยท grouped ยท ascending |
| segment | table ยท stacked ยท transposed |
| yn-grid | default ยท split ยท sorted |
| pick | list ยท grid ยท numbered |
| tier | vertical ยท horizontal ยท descending |
| stat | strip ยท grid ยท vertical |
| kpi | strip ยท stacked ยท inline |
| quote | default ยท tight ยท severity-first |
| radar | filled ยท outline ยท side-by-side |
| brand | grid ยท stacked ยท compact |
| note | default ยท numbered ยท grid |
| checklist | default ยท numbered ยท grid |
| Format v2 โ data visualisation plots (SVG) | |
| line | default ยท smooth ยท stepped |
| area | default ยท stacked ยท normalized |
| pie | default ยท exploded ยท half |
| donut | default ยท thin ยท half |
| scatter | default ยท labeled ยท trend |
| histogram | default ยท cumulative ยท density |
| stacked-bar | default ยท normalized ยท horizontal |
| boxplot | default ยท horizontal ยท notched |
| heatmap | default ยท annotated ยท clustered |
| waterfall | default ยท horizontal ยท colored |
| funnel | default ยท horizontal ยท proportional |
| candlestick | default ยท hollow ยท volume |
| bubble | default ยท labeled ยท packed |
| violin | default ยท with-box ยท split |
| gantt | default ยท grouped ยท minimal |
| treemap | default ยท flat ยท labeled |
| sankey | default ยท vertical ยท colored |
| Format v3 โ content patterns | |
| text | paragraphs (rich text) |
| image | remote image (src, fit, alt, caption) |
| audio | audio player (src, cover, title, artist) |
| video | video player (src, poster) |
| embed | allowlisted HTML (iframe, video, audio, canvas) |
| Format v4 โ podcast mode | |
| podcast | set 0 episode card (src, srt, cover, artist, description) โ enables the player bar; chapter timepoints as cover-title suffix [00:03:12], set class keyword in cover tag (chapter ยท ads ยท transition ยท opening ยท ending ยท bts) |
Colors in card content can be either hex (#0A2766) or palette names ("a") defined in metadata.
Unknown patterns or unparseable content render as a fallback card showing the raw JSON.
.bards format โ a POSIX ustar TAR archive containing index.cards (JSONL, always first entry) plus binary asset entries under assets/. Asset references in the JSONL use the bards: prefix scheme: "src":"bards:assets/000.jpg". External URLs (no prefix) remain valid inside a .bards file.