@kaiord/docs
VitePress documentation site for Kaiord. Hosts the public docs published at https://kaiord.com/docs — guide, format references, CLI commands, MCP tools, legal pages, and the auto-generated TypeScript API reference.
This package is private: true and is not published to npm. It is built and deployed as a static site by the release.yml / pages.yml workflows.
Purpose
- Render the long-form Kaiord documentation as a static VitePress site.
- Keep guide content (
guide/), format specs (formats/), CLI reference (cli/), MCP tools (mcp/), and legal pages (legal/) in one tree. - Generate the TypeScript API reference into
api/from the public packages (@kaiord/core,@kaiord/cli,@kaiord/fit,@kaiord/tcx,@kaiord/zwo,@kaiord/garmin,@kaiord/garmin-connect,@kaiord/mcp) via TypeDoc with thetypedoc-plugin-markdownplugin. - Enforce hygiene rules on docs content: spell-check (cspell) and a privacy-policy invariant (
scripts/check-privacy-policy.mjs).
The home page is index.md. Sidebar / navigation are configured in .vitepress/config.ts.
Build entrypoint
This package is a VitePress site, not a library — it has no main / exports. The build target is the static site under .vitepress/dist/.
# Develop locally with hot reload
pnpm --filter @kaiord/docs dev
# Generate the API reference and build the static site
pnpm --filter @kaiord/docs build
# Preview the built site locally
pnpm --filter @kaiord/docs previewThe build script first runs node scripts/generate-api-docs.mjs to refresh api/ from the source packages, then runs vitepress build. Output is the static site that the deployment workflow uploads.
How to test
# Run the package's node:test suite (script invariants + content guards)
pnpm --filter @kaiord/docs test
# Spell-check Markdown content only
pnpm --filter @kaiord/docs spellcheck
# Verify the site builds end-to-end (catches broken VitePress links and
# missing API references)
pnpm --filter @kaiord/docs buildThe test script runs node --test scripts/*.test.mjs, which covers the brand-token guard, build-output metadata check, head-config invariants, no-hex-literals rule, and the privacy-policy check. The whole suite is also executed in CI as part of pnpm test:scripts.
License
MIT — see the LICENSE file at the repository root.