Docs SSGs

The documentation half of the Static Site Generators family — a different genre from blog SSGs: navigation trees instead of reverse-chronological feeds, versioned docs, API references, search as a first-class feature. Same static-HTML economics (files on a CDN, no runtime), different content model.

The field (all captured)

The MkDocs dynasty (Python)

  • mkdocs (OSS) (22.5k★) — the base engine: Markdown + mkdocs.yml nav → docs site. Simple, stable, slow-moving.
  • mkdocs-material (OSS) (27.5k★) — squidfunk’s theme/extension that became the de-facto product: instant search, tags, social cards, blog plugin, i18n. Most “MkDocs sites” are really Material sites.
  • zensical (OSS) (5.8k★) — the successor from the same team (2025): not a MkDocs release but a next-gen engine — brand-new codebase, async builds, React-free interactive components framework, live-reload ecosystem, zenv CLI. The migration path MkDocs→Zensical is the team’s own stated plan.

The React/Next lane

  • docusaurus (OSS) (66.4k★, Meta) — the heavyweight default for OSS project docs; MDX, versioning, i18n, theming. The “we chose Docusaurus” of major projects.
  • fumadocs (OSS) (13.3k★) — the modern React/Next docs framework: headless UI + Tailwind, content source flexibility (file/MDX/remote), “docs framework” not “docs site”. The Next-lane successor energy Docusaurus lacks.

The framework-native themes

  • starlight (OSS) (9.3k★) — Astro’s official docs theme: islands philosophy applied to docs (zero JS by default), accessibility-first, i18n built in.
  • vuepress (OSS) (22.7k★) — dormant (last push 2024-08); its de-facto successor is vitepress (OSS)-class Vite+Vue tooling. Captured as the historical Vue default.
  • blume (OSS) (1.7k★, rising fast) — Astro+Vite under the hood, zero-config: drop Markdown in a folder, blume dev. AI-first docs: llms.txt, raw-Markdown URLs, Copy-as-Markdown, Ask-AI assistant, hosted MCP server, blume eval (an agent answers questions using only your docs to test them), blume translate. blume eject → own the Astro app. The 2026 “docs for the agents era” bet.

Outliers and adjacent tools

  • mdBook (OSS) (22.2k★, Rust) — GitBook-as-a-single-binary: Summary-file TOC → book. The Rust lane (rust-lang org itself); ideal for repo-docs-as-book, no plugin system.
  • docsify (OSS) (31.5k★) — the odd one: no build step, client-side rendering — the browser fetches raw Markdown and renders at runtime (Vue-powered). Trade: zero pipeline/host-anywhere (even without SSG tooling) vs no static HTML (no SEO without prerender, slow first paint). Alive and pushed 2026-09.
  • Pagefind (OSS) (5.5k★, Rust) — not an SSG but the missing piece for all of them: post-build static search over any generated HTML (this garden’s live search since spec 0006). One binary adds search to any of the above with zero server.
  • lume (OSS) (2.3k★, Deno/TS) — the SSG of the Deno lane; no-config defaults, URL imports. Completes the “SSG for the serverless lane” question: a Lume-built site deploys to the same Workers/celld (OSS) story.

The axes specific to docs

  • Build-time vs client-side: everything above builds static HTML except docsify (runtime). Static wins on SEO/perf; docsify wins on “the docs ARE the repo, nothing else”.
  • Opinionated theme vs headless framework: Material/Docusaurus/Starlight ship a look; Fumadocs/Blume are frameworks you compose.
  • Search: local index shipped to client (Lunlun/Pagefind-class) vs hosted service — the docs version of the Quartz search problem. Blume ships Orama local + Pagefind flag; Material has instant local search.
  • AI-readiness (2026’s new axis): llms.txt, Markdown mirrors, MCP servers, eval-against-docs — Blume is built around it; the field is converging on it (Docusaurus/Starlight adding equivalents).
  • Succession: VuePress→VitePress, MkDocs→Zensical — the docs world’s recurring pattern: engines get rewritten on modern build tooling while keeping the content format.

Fit for this homelab

  • mkdocs-material — the default for project docs (ocli/oncall-class repos): Python toolchain already present, minimal config, instant search. The pragmatist’s pick.
  • mdBook — Rust lane: the four-folder context system per repo compiles to a book; single binary, no Node.
  • blume — the watch-list item: if the AI-first docs pattern (llms.txt + eval + MCP) proves out, it’s the 2026 answer; also the only one whose defaults match the garden’s agent-adjacent workflow.
  • Zensical — worth tracking as Material’s future; new projects can start there once the plugin ecosystem matures.

Open

  • (open: mkdocs-material hands-on for one project repo’s docs — the just docs target candidate)
  • (open: does the AI-readiness axis (llms.txt/MCP/eval) become table stakes? — revisit when Docusaurus/Starlight ship theirs)

Related: Static Site Generators · Quartz search · Markdown won