Skip to content

Building the Documentation

ExactStep includes both a Sphinx (MyST) configuration and a MkDocs configuration. You can build either locally.

Prerequisites

Install the documentation extras:

pip install -e .[docs]

Sphinx (MyST + Furo)

Build HTML into docs/_build/html:

sphinx-build -b html docs docs/_build/html
  • Uses MyST for Markdown support
  • Theme: Furo
  • Autodoc/Autosummary for API pages

Open the result:

python -m webbrowser docs/_build/html/index.html

MkDocs (Material)

Serve the docs locally with live reload:

mkdocs serve

Build a static site into site/:

mkdocs build
  • Theme: Material
  • mkdocstrings (Python handler) for API pages

Notes

  • API pages include dual blocks: a mkdocstrings directive (:::) and a Sphinx eval-rst block. Each tool ignores the other's directive.
  • Keep mkdocs.yml and docs/index.md nav in sync when adding new pages.
  • Add new modules under docs/api/ with both directives if you want parity across Sphinx and MkDocs.