Skip to main content

Deploying these docs

The documentation site is a standard Docusaurus 3 static build. This page covers how to build it and the available deployment options.


Building

pnpm docs:build

This runs Docusaurus's production build and emits a fully static site to docs/build/. The build performs broken-link checking (onBrokenLinks: 'throw' in docs/docusaurus.config.ts) — the command fails if any internal link is broken.

Under the hood, pnpm docs:build delegates to pnpm --filter @pace-e2e/docs build, scoping the command to the docs workspace package. Always run it from the repo root, not from inside docs/.

Other docs scripts:

ScriptPurpose
pnpm docs:startStart the Docusaurus dev server with hot reload
pnpm docs:serveServe the production build locally for smoke-testing

Before publishing: configure the URL

The current url in docs/docusaurus.config.ts is a placeholder:

https://pace-e2e-docs.example.com

Replace it (and baseUrl if the site will not live at the domain root) with the real values before your first public deploy. These fields affect the sitemap and any absolute URLs the framework emits — the broken-link check itself only uses relative paths, so the wrong url will not fail the build, but it will produce incorrect sitemap entries.


Deployment options

Vercel or Netlify

Both platforms support monorepo / pnpm workspace setups:

SettingValue
Install command(run at repo root — let the platform detect pnpm from packageManager)
Build commandpnpm docs:build
Output directorydocs/build

The install step must run at the repo root (not inside docs/) so that pnpm resolves the workspace and installs all packages, including the @pace-e2e/docs workspace member.

On Vercel, set the "Root Directory" to . (the repo root) and override the build command and output directory as above. On Netlify, use the same values in netlify.toml or the site settings.

Any static host

Upload the contents of docs/build/ to any static file host (GitHub Pages, S3 + CloudFront, Cloudflare Pages, etc.). No server-side logic is required — the output is plain HTML, CSS, and JS.

If the site lives at a sub-path (e.g., https://example.com/e2e-docs/), set baseUrl: '/e2e-docs/' in docs/docusaurus.config.ts before building.


Local smoke-test

After building, verify the static output before deploying:

pnpm docs:build
pnpm docs:serve

docs:serve starts a local HTTP server on the static docs/build/ output, letting you check navigation, search, and any deep links before pushing.