Contributing¶
Development setup¶
Requires uv.
uv sync
uv run ruff check
uv run pytest
Documentation¶
Docs are built with Sphinx and MyST-NB. API pages
are generated from docstrings (Google style). Example notebooks live in docs/examples/ as
jupytext percent-format .py files, and are executed on every docs build.
uv sync --group docs
uv run sphinx-build -W --keep-going docs docs/_build/html
To edit a notebook interactively, open it in VS Code (# %% cells), or run uv run jupyter lab and open the .py
file with Open With → Notebook.
Releasing to PyPI¶
uv lock --check
uv run coverage run
uv run coverage report
uv version --bump <major,minor,patch>
uv build
uv publish