Skip to content

Releases: seandavi/quarto-livefigures

0.8.0 — MCP server + CLI

Choose a tag to compare

@seandavi seandavi released this 21 Jul 15:18
  • MCP server (ADR 0015) — agents can now see the figures they
    write. Tools: render (source → PNG image block or SVG text),
    validate, list_formats; the agent skill is served as the
    livefigures://skill resource. Two transports, identical behavior:
    • Public: https://mcp.livefigures.seandavis.net/mcp (streamable
      HTTP, stateless, nothing to install). graphviz/dbml render via kroki
      there (Cloudflare Workers bans runtime wasm compilation); all other
      formats run the extension's own engines in-worker.
    • Local: _extensions/seandavi/livefigures/mcp.mjs ships in the extension
      (stdio, zero deps, offline for local formats) — claude mcp add livefigures -- node _extensions/seandavi/livefigures/mcp.mjs.
  • CLI — the same tools as commands, also shipped in the extension
    (_extensions/seandavi/livefigures/cli.mjs) and as an npm bin (livefigures):
    render, validate (exit 1 on bad sources — CI-friendly), formats,
    mcp.
  • Internal: renderer split into pure lib functions + thin CLI
    wrappers (the shell-out contract is unchanged); vega gained a
    CSP-safe interpreter mode; Excalidraw's asset path is now set where
    excalidraw actually reads it. Release version sync now includes
    package.json (4 files, CI-enforced).

v0.7.1 — subdirectory path fix + docs site

Choose a tag to compare

@seandavi seandavi released this 21 Jul 04:07
c63d2c4

Install: quarto add seandavi/quarto-livefigures@v0.7.1

  • Fix: documents in project subdirectories (book chapters, website sections) got mangled figure paths — pandoc.path.make_relative never emits .. segments; livefigures now computes relative paths itself. Found by dogfooding the new docs site.
  • Docs site source added under site/ (deploying to livefigures.seandavis.net).

Full notes in NEWS.md.

v0.7.0 — local Graphviz and DBML

Choose a tag to compare

@seandavi seandavi released this 21 Jul 03:22
83c9fcd

Install: quarto add seandavi/quarto-livefigures@v0.7.0

  • Graphviz (.dot, .gv; block .dot) — wasm-rendered, fully offline; file-referenced figures with caching and native figure semantics, complementing Quarto's code-cell dot
  • DBML (.dbml) — database schema diagrams rendered locally
  • 18 agent-authorable source formats total: 12 local/offline, 6 via kroki

Full notes in NEWS.md; tiering rationale in ADR 0014.

v0.6.0 — eight more kroki formats

Choose a tag to compare

@seandavi seandavi released this 21 Jul 03:16
5748f2a

Install: quarto add seandavi/quarto-livefigures@v0.6.0

Batch-enabled after empirically probing all 28 kroki.io diagram types (ADR 0012 addendum):

  • New formats (file extension + inline block class each): D2, C4-PlantUML, Structurizr, erd, ditaa, pikchr, svgbob, TikZ (complete standalone docs)
  • Excluded with reasons: blockdiag family (broken server-side), umlet/BPMN (hand-placed coordinates — not agent-authorable), symbolator/wireviz (deep-niche)
  • Hardened kroki client: rejects silent empty-200 responses; explicit User-Agent for CDN compatibility
  • 16 source formats total — every one authorable by an AI agent

Full notes in NEWS.md.

v0.5.0 — inline code-block figures

Choose a tag to compare

@seandavi seandavi released this 21 Jul 02:55
7213659

Install: quarto add seandavi/quarto-livefigures@v0.5.0

  • Inline code-block figures: fence a diagram with a backend class and it becomes a real figure — captions, labels, cross-references included (ADR 0013):
```{.nomnoml #fig-pipe fig-cap="The pipeline"}
[Filter] -> [Cache]

- Classes: `.excalidraw`, `.vega-lite`, `.vega`, `.nomnoml`, `.wavedrom`, `.bytefield`, `.plantuml`; same cache/options/hard-fail behavior as file figures
- **Recommended install form is now** `filters: [{at: pre-ast, path: livefigures}]` — required for crossrefs on inline blocks; plain form still works for file-referenced figures

Full notes in NEWS.md.

v0.4.0 — PlantUML via kroki

Choose a tag to compare

@seandavi seandavi released this 21 Jul 01:22
9ef71a5

Install: quarto add seandavi/quarto-livefigures@v0.4.0

  • New backend class: kroki-rendered formats, starting with PlantUML (.puml, .plantuml) — the first network-rendered backend (ADR 0012)
  • Endpoint configurable via livefigures: kroki-url: metadata; self-host for private diagrams; endpoint participates in the cache key
  • PDF stays deterministic: SVG is fetched, PNG rasterized locally with bundled fonts
  • Warm-cache rebuilds work offline; an unreachable endpoint fails loudly with the self-hosting escape hatch
  • Seven source formats total; gallery gains a PlantUML page

Full notes in NEWS.md.

v0.3.0 — text-diagram trio: nomnoml, WaveDrom, bytefield

Choose a tag to compare

@seandavi seandavi released this 21 Jul 01:03
34587fa

Install: quarto add seandavi/quarto-livefigures@v0.3.0

Three new backends selected for agent fluency — formats LLMs author reliably, none with existing Quarto support (ADR 0011):

  • nomnoml (.noml, .nomnoml) — terse node-edge/UML diagrams, automatic layout
  • WaveDrom (.wavedrom, .wavedrom.json) — digital timing & register diagrams from JSON
  • bytefield (.bytefield) — byte/packet layout diagrams

Six source formats now render through one pipeline: single-source-of-truth, offline, deterministic, content-addressed caching. theme=dark/background=scene hard-fail on formats without those variants rather than rendering wrong.

Full notes in NEWS.md.

v0.2.0 — Vega-Lite/Vega backend

Choose a tag to compare

@seandavi seandavi released this 21 Jul 00:46
f5492cf

Install: quarto add seandavi/quarto-livefigures@v0.2.0

  • New backend: Vega-Lite / Vega (.vl.json, .vg.json) — headless, dedicated bundled renderer (ADR 0010); chosen over draw.io for agentic-editing workflows.
  • Chart PDFs are deterministic across machines: shared rasterizer with bundled Liberation Sans, no system fonts.
  • theme=auto no longer CSS-inverts charts (data colors stay faithful); explicit theme=dark uses the vega dark theme. Excalidraw behavior unchanged.
  • Cache keys include the backend; upgrading invalidates caches as designed.

Full notes in NEWS.md.

v0.1.0 — MVP: native .excalidraw figures

Choose a tag to compare

@seandavi seandavi released this 21 Jul 00:35

First release. See README.