Documentation¶
User-facing documentation lives in docs/ and is built with Sphinx and MyST (Markdown).
Root markdown vs docs/¶
Keep a single source of truth for each audience:
Content |
Write it here |
Not here |
|---|---|---|
Install, guides, API reference |
|
|
GitHub landing summary |
|
|
Contributing workflow |
|
|
Behavioural contract |
|
User guide pages |
Vulnerability reporting |
|
— |
Release notes |
|
— |
README.md and CONTRIBUTING.md stay short and link into the docs site. Avoid copying CLI tables, workflow steps, or guide prose into root files.
Build locally¶
pip install -e ".[docs]"
make docs
Output is written to docs/_build/html/. Open docs/_build/html/index.html in a browser.
Live reload¶
make docs-serve
Uses sphinx-autobuild to rebuild on file changes.
Documentation structure¶
Section |
Location |
|---|---|
Getting started |
|
User guide |
|
API reference |
|
Contributing |
|
Configuration: docs/conf.py
Writing guidelines¶
Use task-oriented prose for user guides
Include copy-paste examples where helpful
Keep CLI option tables accurate with
src/astro/cli/main.pyWhen behaviour changes, update both
SPEC.mdand the relevantdocs/page
API docstrings¶
Public API symbols should have docstrings so autodoc renders useful pages. Focus on symbols exported from astro.__all__ and key pipeline/resolver classes.
Read the Docs¶
The repository includes .readthedocs.yaml for automated builds.
Publish to Read the Docs¶
Sign in at readthedocs.org
Import the Git repository
Confirm the config file is
.readthedocs.yamlEnable builds on
mainUpdate
[project.urls] Documentationinpyproject.tomlwith the final URL
RTD installs the package and docs dependencies so autodoc can import Polars and Pandera-dependent modules.
Relationship to other docs¶
docs/— user-facing documentation (installation, guides, API reference)SPEC.md— behavioural specification for implementers and agentsREADME.md/CONTRIBUTING.md— short GitHub entry points that link here
When adding or changing features, update the relevant docs/ page and SPEC.md. See Contributing for the full file layout.