Skip to content

Docs/mkdocs material rtd#11

Open
nseetim wants to merge 4 commits into
Centurix:masterfrom
nseetim:docs/mkdocs-material-rtd
Open

Docs/mkdocs material rtd#11
nseetim wants to merge 4 commits into
Centurix:masterfrom
nseetim:docs/mkdocs-material-rtd

Conversation

@nseetim

@nseetim nseetim commented May 7, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds a MkDocs Material documentation site (similar in toolchain to FastAPI/Pydantic), wires Read the Docs to build from mkdocs.yml, and runs a strict MkDocs build in CI so broken docs fail PR checks.

Motivation

  • README/PyPI are great for a snapshot but don’t scale for guides, structured navigation, or generated API docs.
  • The repo already pointed at Read the Docs and used Sphinx with minimal content; MkDocs gives a clearer path for contributors and users.

What’s included

  • mkdocs.yml — Material theme, search, strict mode, docs_dir: docs/mkdocs.
  • docs/mkdocs/ — Home, Getting started, API reference (mkdocstrings), FastAPI, Contributing.
  • [project.optional-dependencies] docsmkdocs-material, mkdocstrings[python].
  • docs-builduv sync --extra docs + mkdocs build --strict.
  • .readthedocs.yaml — switched from Sphinx to MkDocs, installs with pip install .[docs].
  • .github/workflows/python-app.ymluv sync --extra docs + uv run ./docs-build after typecheck.
  • README.md — prominent docs URL + how to run mkdocs serve / ./docs-build locally.

Notes for maintainers

  • Read the Docs project settings may need the documentation type set to MkDocs (if it was still Sphinx).
  • PDF builds were dropped from .readthedocs.yaml (they were tied to Sphinx). HTML-only is typical for MkDocs; PDF can be revisited separately if desired.
  • Legacy docs/conf.py / Sphinx scaffold remains in the repo for reference; the canonical published build is MkDocs per Contributing.

Test plan

  • uv sync --extra docs
  • uv run ./docs-build (strict)
  • pytest (existing suite)

nseetim added 4 commits May 7, 2026 08:21
Return validated instances from DANJAResource/DANJAResourceList wrap
validators to comply with Pydantic v2 expectations and avoid the
"return self" warning.
Add regression tests for single/list resources with included payloads,
and update resource id resolution to access model_fields from the
model class to remove v2.11 deprecation warnings.
Add a quickstart, API reference, Pydantic v2 notes, and practical snippets for resource configuration and included relationships to make the PyPI-facing docs easier to navigate.
Introduce mkdocs.yml with Material theme, mkdocstrings-based API pages under docs/mkdocs, optional [docs] extras, and a docs-build script. Switch Read the Docs to MkDocs with pip install .[docs], run MkDocs in CI, and link the published docs from the README.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant