The website and documentation for Vyasa, built with Fumadocs as a static export and deployed to Cloudflare Pages.
- Hand-written pages live here:
content/docs/index.mdx,content/docs/getting-started.mdxand the landing page inapp/(home). - Everything else is generated from the main repository so docs and code
never disagree:
pnpm sync:docscopies itsdocs/*.mdandCONTRIBUTING.md, andpnpm gen:apibuilds the REST reference from itsadmin/openapi.json. Edit those in vyasa-cms/vyasa, not the copies.
The scripts read the main repository from ./vyasa (or VYASA_SRC).
git clone https://github.com/vyasa-cms/website && cd website
git clone https://github.com/vyasa-cms/vyasa
pnpm install
pnpm dev # http://localhost:3000
pnpm build # static site in out/vyasa.site is a Cloudflare Worker that serves the static export (no script),
configured in wrangler.jsonc:
VYASA_SRC=../vyasa pnpm build
npx wrangler deploy.github/workflows/deploy.yml does the same on every push to main once
GitHub Actions is available to this repository (it builds pull requests
without deploying). Secrets: VYASA_READ_TOKEN (fine-grained token,
Contents: read on vyasa-cms/vyasa, only while that repository is private),
CLOUDFLARE_API_TOKEN and CLOUDFLARE_ACCOUNT_ID.
MIT OR Apache-2.0, like Vyasa.