docs: add MkDocs Material site + GitHub Pages deploy#44
Open
dustenhubbard wants to merge 1 commit into
Open
Conversation
Render a MkDocs Material documentation site from docs/, with a nav that surfaces the existing User Guide, a summarized Performance page linking to the benchmark report, the uv development guide, and out-links to CONTRIBUTING and SECURITY. Add a short landing page (docs/index.md), pin the build deps in docs/requirements.txt, and add a GitHub Pages deploy workflow that runs on pushes to main touching the docs (plus manual dispatch). This is additive: the GitHub wiki and the in-app Help "user guide" link are left untouched. Fix four relative links in the User Guide (../CONTRIBUTING.md, ../README.md) that point outside docs_dir so that mkdocs build --strict passes; the guide is otherwise unchanged. Ignore the built site/ directory.
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.
Summary
Adds a MkDocs Material documentation site rendered from
docs/, deployable toGitHub Pages. This is additive: it does not touch the GitHub wiki or the
in-app Help "user guide" link (see Open decisions below).
What's here
mkdocs.ymlat the repo root: Material theme;site_name"PyReconstruct";repo_url/repo_namepoint at this fork;docs_dir: docs. Features:navigation.instant,navigation.top,navigation.sections,search.suggest,content.code.copy; light/dark palette toggle; the built-insearchplugin.docs/USER_GUIDE.md.docs/performance.md) summarizes the fork's benchmarkheadline and links out to
benchmarks/REPORT.mdand the harness.docs/DEV_UV.md.CONTRIBUTING.mdandSECURITY.md(kept at the repo root, not duplicated intodocs/).docs/index.md: a short landing page (what PyReconstruct is, an installpointer, and links into the guide), reusing the README's framing without
duplicating it.
docs/requirements.txt: pinsmkdocs-material==9.7.6so CI and localbuilds are reproducible.
.github/workflows/docs.yml: builds the site and deploys to GitHub Pagesusing the modern Pages flow (
configure-pages,upload-pages-artifact,deploy-pages) withpages: write/id-token: writepermissions andconcurrencyon thepagesgroup. Triggers on pushes tomainthat touchdocs/**,mkdocs.yml, or the workflow, plusworkflow_dispatch.docs_dir(
../CONTRIBUTING.mdx3,../README.mdx1) now use absolute GitHub URLs somkdocs build --strictpasses. The guide is otherwise unchanged. The builtsite/directory is git-ignored.Verification
mkdocs build --strictsucceeds with no broken-link or nav warnings:All pages build (
index,USER_GUIDE,performance,DEV_UV) and the searchindex is generated. The guide's internal section anchors all resolve under the
default MkDocs slugify.
Action required to publish
GitHub Pages must be enabled once, manually: Settings -> Pages -> Source:
"GitHub Actions". Until then the deploy job cannot publish.
Open decisions (for the maintainer, not changed here)
Austin / GitHub wiki. This site can grow into the canonical manual, or the
wiki can remain the deep reference with this site as the in-repo essentials.
Not decided here.
at the wiki. Repointing it at this site (once published) is a separate
decision and is intentionally left untouched.