Skip to content

Development

Betamax uses Rust for the CLI and core crates, pnpm for the Starlight docs site, and mise for local tool versions.

Terminal window
mise install
pnpm install
mise run check
mise run docs-site-check

Useful Rust commands:

Terminal window
mise run fmt-check
mise run clippy
mise run test
mise run doc
mise run validate
mise run package

Docs site commands:

Terminal window
mise run docs-site-dev
mise run docs-site-check
mise run docs-site-build

The docs site is published under Astro’s /betamax base path. Starlight-generated navigation, sidebar, and pagination links are already base-aware, but links authored directly in MDX are emitted as written.

Use normal relative Markdown links between docs pages. The site config canonicalizes the slashless base route, /betamax, to /betamax/ before users can follow those links. Without that redirect, links such as ./quick-start/ would resolve to /quick-start/ from /betamax instead of staying under /betamax/.

Releases are managed by release-plz and crates.io Trusted Publishing. The release workflow installs mise tools because package verification builds libghostty-vt-sys, which requires Zig 0.15.2 until the upstream Ghostty build supports newer Zig releases.