docs: migrate from MkDocs to Zensical (#144)#145
Merged
Conversation
Zensical is the successor to MkDocs + Material for MkDocs, built by the
same team. It consumes the existing mkdocs.yml natively, preserving all
URLs/anchors, so no config or content changes are needed.
- pyproject: drop mkdocs + mkdocs-material, add zensical>=0.0.38
- justfile / docs.yml CI: mkdocs {serve,build} -> zensical {serve,build}
- doc refs (release-process, gen_docs, .gitignore) updated off mkdocs
mkdocs.yml is left untouched (still the config Zensical reads); the
`mkdocs.yml` path trigger in docs.yml is kept for the same reason.
Verified: `zensical build --strict` on a clean tree reports "No issues
found" (exit 0); rendered site is equivalent — nav tabs/sections,
light/dark palette toggle, admonitions, superfences, code-copy, and
search all present.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018rmbpXS72z5bRWXEMPXG6t
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #144.
Migrates the docs toolchain from MkDocs + Material for MkDocs to Zensical (the successor, same team). Zensical reads the existing
mkdocs.ymlnatively — no config or content changes, all URLs/anchors preserved.Changes
pyproject.toml— dropmkdocs+mkdocs-material, addzensical>=0.0.38(resolves to 0.0.50), keeppyyaml.justfile—just docs→zensical serve,just docs-build→zensical build --strict..github/workflows/docs.yml— build step →uv run zensical build --strict. Output dir stayssite/, so the Pages upload path is unchanged. Themkdocs.ymlpath trigger is kept (still the config file).release-process.md,gen_docs.pydocstring,.gitignorecomment updated off "mkdocs".mkdocs.ymlleft untouched per upstream guidance.Compatibility
Vanilla Material setup — stock
theme.features, standardmarkdown_extensions, no third-partyplugins:beyond built-in search — migrates cleanly per the compat matrix.Verification
zensical build --stricton a clean tree →No issues found, exit 0.Note on
docs/superpowers/That dir is gitignored local-only planning docs. MkDocs excluded it via
exclude_docs:, which Zensical does not honor — so a localzensical build --strictwill warn on its stale cross-links. CI is unaffected (dir is absent in checkouts → clean build). Per maintainer decision, the dir is left in place; move/remove it locally if you want a clean local strict build.Rollback
mkdocs.ymlis untouched — revert is just undoing the deps + command + CI commits.🤖 Generated with Claude Code