Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

The standalone viewer

The playground is for authoring; the standalone viewer is for sharing. thoughtml --html bakes a document into a single, self-contained HTML file that opens in any browser — no server, no install, no network.

thoughtml choose-datastore.thml --html -o decision-record.html

Open the result and you get the same time-driven view the playground shows under “Viewer”: reasoning laid out along time (earlier left, later right), pan / zoom, click a node for its detail, the legend, an as-of bar with replay, and light / dark — all running on a model baked into the file. Press play (or drag the bar) and beliefs fade in as of when they were asserted. --html turns on the full mirror compute stack automatically, so the derived readings have data to show.

What’s in the file

The exported artifact is the canonical JSON plus a small renderer, inlined into one self-contained HTML file (~600 KB). There is no WebAssembly and no parser inside it — parsing already happened when you ran the command. That is why it is small, offline, and deterministic: it carries the result, not the compiler. The fonts are the reader’s system fonts, so nothing is fetched.

A snapshot, by design

The viewer renders a snapshot of the model at export time. There is no live re-parsing inside the file — re-run thoughtml --html after editing the source to refresh it, the same way you would recompile.

Which surface when

You want to…Use
Author live, edit, experimentthe playground
Check a document in CI or a scriptthoughtml doc.thml → JSON + exit code
Hand someone an interactive, time-driven viewthoughtml doc.thml --html -o doc.html

All three render from the same parser and the same time-driven renderer — one canonical model, many faithful projections.