The code lives in src/, one file per pipeline stage.
See Architecture for how they fit together, and Extending to add a collector or display.
Build and test¶
We use bun to drive the build (see package.json):
bun install # install dependencies
bun run build # bundle the plugin to dist/plugin.mjs
bun run test # build the docs, then run the vitest suite against the output
bun run docs:live # live docs server while you workThe tests in tests/ build the docs/ site and assert on the rendered mdast.
A passing run means the examples in the docs actually render.
Cut a release¶
Two GitHub Actions in .github/workflows/ handle publishing:
deploy.ymlrebuilds the docs site and publishes it to GitHub Pages on every push tomain.release.ymlbuilds the bundle and attachesdist/plugin.mjsto a GitHub Release.
To publish a new bundle, draft a release on GitHub with a tag like v0.1.0.