Skip to main content

Docs site deployment

The documentation site is built with Docusaurus and deployed through GitHub Actions to GitHub Pages.

Deployment model​

The repo uses the GitHub Pages Actions flow:

  1. install Node dependencies
  2. build the Docusaurus site
  3. upload the generated build/ output as a Pages artifact
  4. deploy that artifact to GitHub Pages

This is the public docs site path for the repository. It is separate from the release asset workflows.

Custom domain​

The docs site is deployed to:

  • https://docs.draton.lhqm.io.vn

That domain is fixed directly in:

  • docusaurus.config.ts
  • static/CNAME

Workflow behavior:

  • GitHub Actions builds the Docusaurus site
  • the generated Pages artifact includes CNAME
  • Docusaurus uses baseUrl: /

Repo-side deployment still requires GitHub Pages to be configured to use GitHub Actions as the source, and DNS for docs.draton.lhqm.io.vn must point to GitHub Pages.

Local development​

Install dependencies:

npm install

Run local preview:

npm run start

Build the static site:

npm run build

Local builds still work with the production URL in config because Pages deployment uses a root baseUrl.

Contributor rules for docs changes​

When editing docs:

  • preserve the locked language philosophy
  • keep examples aligned with actual parser/typechecker behavior
  • do not introduce alternate canonical syntax
  • keep self-host status truthful
  • update both narrative docs and policy docs when a syntax/tooling truth changes

The docs site is public-facing, but it is still a language-engineering document set, not a marketing layer detached from implementation truth.