Formats

livefigures supports eighteen figure source formats through one pipeline. The unifying idea: each is a plain-text or JSON notation with real authoring communities and — critically — high LLM fluency, so both humans and AI agents can create, review, and diff figure sources the same way they handle code. Formats marked kroki render through a kroki endpoint (network on cache misses only, self-hostable); everything else renders locally and offline.

Sketching & general diagrams

Format Extensions Rendering Covers
Excalidraw .excalidraw local Freehand whiteboard sketches: architecture drawings, annotated mockups, anything you’d draw for a colleague. The scene file is JSON; the editor is free and browser-based.
D2 .d2 kroki A modern declarative diagram language with clean syntax and automatic layout — a good default for boxes-and-arrows when you aren’t sketching by hand.
ditaa .ditaa kroki Turns ASCII-art boxes into polished raster-style diagrams; useful when the source must remain readable as plain text.
svgbob .svgbob kroki ASCII art to faithful SVG, preserving the hand-typed aesthetic.
pikchr .pikchr kroki The modern descendant of Kernighan’s PIC language (Kernighan 1984), used throughout SQLite and Fossil documentation.
TikZ .tikz kroki Publication-grade LaTeX graphics. Sources must be complete standalone documents.

Charts & data graphics

Format Extensions Rendering Covers
Vega-Lite .vl.json local A grammar of interactive graphics (Satyanarayan et al. 2017), descended from Wilkinson’s Grammar of Graphics (Wilkinson 2005). The most agent-fluent chart format there is: concise, declarative JSON.
Vega .vg.json local The lower-level dataflow language beneath Vega-Lite (Satyanarayan et al. 2016). Reaches things Vega-Lite can’t, including force-directed network layouts (Fruchterman and Reingold 1991).

Graphs, networks & software structure

Format Extensions Rendering Covers
Graphviz .dot, .gv local The canonical graph-layout system (Gansner and North 2000). Dependency graphs, state machines, pipelines — dot has four decades of mindshare and correspondingly deep LLM fluency.
nomnoml .noml, .nomnoml local UML-ish boxes and arrows from remarkably terse text, laid out hierarchically in the Sugiyama style (Sugiyama et al. 1981). The fastest path from idea to node-edge diagram.
PlantUML .puml, .plantuml kroki The workhorse of software UML: sequence, class, activity, state, component diagrams and more.
C4-PlantUML .c4 kroki C4-model architecture diagrams (context/container/component) in PlantUML syntax.
Structurizr .structurizr kroki C4 architecture from the dedicated Structurizr DSL — model once, view many.

Data modeling

Format Extensions Rendering Covers
DBML .dbml local Database schemas — tables, columns, relationships — in the popular DBML language.
erd .erd kroki Compact entity-relationship diagrams in a minimal text notation.

Hardware & protocol

Format Extensions Rendering Covers
WaveDrom .wavedrom, .wavedrom.json local Digital timing diagrams and register/bit-field layouts from JSON — the de-facto standard in hardware documentation.
bytefield .bytefield local Byte- and packet-layout diagrams, in the tradition of RFC header figures.

What we deliberately left out

Selection is documented in the project’s ADRs: formats requiring hand-placed coordinates (UMLet, BPMN-DI) fail the agent-authorability test; tldraw’s SDK license prohibits open-source redistribution; the blockdiag family is broken on public kroki; Mermaid and code-cell Graphviz are already native to Quarto. SMILES (chemistry) and ABC notation (music) are queued next.

References

Fruchterman, Thomas M. J., and Edward M. Reingold. 1991. “Graph Drawing by Force-Directed Placement.” Software: Practice and Experience 21 (11): 1129–64.
Gansner, Emden R., and Stephen C. North. 2000. “An Open Graph Visualization System and Its Applications to Software Engineering.” Software: Practice and Experience 30 (11): 1203–33.
Kernighan, Brian W. 1984. PIC — a Graphics Language for Typesetting: Revised User Manual. Computing Science Technical Report 116. Bell Laboratories.
Satyanarayan, Arvind, Dominik Moritz, Kanit Wongsuphasawat, and Jeffrey Heer. 2017. “Vega-Lite: A Grammar of Interactive Graphics.” IEEE Transactions on Visualization and Computer Graphics 23 (1): 341–50. https://doi.org/10.1109/TVCG.2016.2599030.
Satyanarayan, Arvind, Ryan Russell, Jane Hoffswell, and Jeffrey Heer. 2016. “Reactive Vega: A Streaming Dataflow Architecture for Declarative Interactive Visualization.” IEEE Transactions on Visualization and Computer Graphics 22 (1): 659–68. https://doi.org/10.1109/TVCG.2015.2467091.
Sugiyama, Kozo, Shojiro Tagawa, and Mitsuhiko Toda. 1981. “Methods for Visual Understanding of Hierarchical System Structures.” IEEE Transactions on Systems, Man, and Cybernetics 11 (2): 109–25.
Wilkinson, Leland. 2005. The Grammar of Graphics. 2nd ed. Springer.