The canonical documentation site for corvid — an embedded, multi-modal data store for AI applications. Built with Astro Starlight, deployed to GitHub Pages at https://corvid-db.github.io/docs/.
The pages are hand-maintained markdown except two generated
reference pages — the public-constructs list (reference/constructs.md,
from the engine's docs/SYNTAX.md) and the frozen error-code table
(reference/error-codes.md, from the engine's docs/FFI.md §1.3) —
which are regenerated from the engine tag recorded in .engine-pin.
CI drift-gates the committed copies against that tag, so the generated
pages can never silently diverge from the engine they document.
/docs/(current) — built from this repo's default branch on every push (deploy.yml). Tracks the engine's development. A version banner on every page says so./docs/vX.Y.Z/(snapshots) — at each engine release, the docs repo's content at that moment is snapshotted into areleases/vX.Y.Zbranch, then built withSITE_VERSION=X.Y.Z SITE_BASE=/docs/vX.Y.Z/and published undervX.Y.Z/ongh-pages(snapshot.yml, triggered by tag pushes or manually). Snapshots are frozen — fixes land on current and future snapshots only. Both builds are served from onegh-pagesbranch; the current build replaces the root and never touches thevX.Y.Z/directories.
The honest framing (documented on the site's "About these docs" page): a snapshot reflects this repo at the release moment; the engine's changelog remains the record of what changed in the engine.
npm install
npm run dev # live preview at http://localhost:4321/docs/
npm run build # build + llms.txt + markdown sources into dist/
npm run check-links # internal link check over dist/
npm run verify-sync # generated-pages drift gate (engine tag in .engine-pin)
npm run sync-from-engine.sh [tag] # regenerate the two reference pagesTwo build shapes share one config:
npm run build # current -> base /docs/
SITE_VERSION=0.2.1 SITE_BASE=/docs/v0.2.1 npm run build # snapshot -> base /docs/v0.2.1/ci.yml on every push/PR: npm ci, build the
current shape, link check, the sync drift gate, then build the snapshot
shape and link check it too. Deploys are separate workflows.
/llms.txtand/llms-full.txtat the site root (generated at build)- Every page as clean markdown at
/src/<page-path>.md - Stable URLs, per-page meta descriptions, sitemap
- At engine release time, snapshot the docs:
git branch releases/vX.Y.Z <sha>and push it. - Run the Snapshot vX.Y.Z workflow with the version (or push a
vX.Y.Ztag) — it builds and publishes/docs/vX.Y.Z/. - Update the current site's banner link list
(
src/components/VersionBanner.astro) and, if the engine tag moved, the.engine-pin+ regeneration + commit.
MIT — see LICENSE.