Skip to main content

nexus-docs

This documentation site. Built with Docusaurus 3 + Tailwind v4, deployed as static HTML behind nginx.

Structure

nexus-docs/
docs/ reference docs (autogenerated sidebar)
guides/ walkthroughs (separate docs plugin)
blog/ release notes
src/ landing page + theme
static/ assets
docusaurus.config.js
Dockerfile multi-stage build → nginx
nginx.conf

Public vs internal build

A single source tree produces two artifacts. Everything under docs/_internal/** is excluded from the public build:

pnpm build:public # public artifact (no _internal/**)
pnpm build:internal # full artifact, gated at the hosting layer

The exclusion is driven by docusaurus.config.js:

const isPublicBuild = process.env.BUILD_PUBLIC === "true";
const internalDocsExclude = isPublicBuild ? ["**/_internal/**"] : [];

Run locally

pnpm install
pnpm start

Deploy

The Dockerfile builds the static site and serves it from nginxinc/nginx-unprivileged. CI builds both the public and internal variants and bumps image tags in nexus-gitops.

  • nexus-gitops — deployment
  • The _internal convention — see the internal docs README