This example shows a basic Sphinx project with Read the Docs. You're encouraged to view it to get inspiration and copy & paste from the files in the source code. If you are using Read the Docs for the first time, have a look at the official Read the Docs Tutorial.
- 📚 docs/
- A basic Sphinx project lives in
docs/
. All the*.rst
make up sections in the documentation. - ⚙️ .readthedocs.yaml
- Read the Docs Build configuration is stored in
.readthedocs.yaml
. - ⚙️ docs/conf.py
- Both the configuration and the folder layout follow Sphinx default conventions. You can change the Sphinx configuration values in this file
- 📍 docs/requirements.txt and docs/requirements.in
- Python dependencies are pinned (uses pip-tools). Make sure to add your Python dependencies to
requirements.txt
or if you choose pip-tools, editdocs/requirements.in
and remember to runpip-compile docs/requirements.in
. - 💡 docs/api.rst
- By adding our example Python module
lumache
in the reStructuredText directive:autosummary:
, Sphinx will automatically scan this module and generate API docs. - 💡 docs/usage.rst
- Sphinx can automatically extract API documentation directly from Python modules, using for instance the
:autofunction:
directive. - 💡 lumache.py
- API docs are generated for this example Python module - they use docstrings directly in the documentation, notice how this shows up in the rendered documentation.
- 🔢 Git tags versioning
- We use a basic versioning mechanism by adding a git tag for every release of the example project. All releases and their version numbers are visible on example-sphinx-basic.readthedocs.io.
- 📜 README.rst
- Contents of this
README.rst
are visible on Github and included on the documentation index page (Don't Repeat Yourself). ⁉️ Questions / comments- If you have questions related to this example, feel free to can ask them as a Github issue here.
This project has a standard Sphinx layout which is built by Read the Docs almost the same way that you would build it locally (on your own laptop!).
You can build and view this documentation project locally - we recommend that you activate a local Python virtual environment first:
# Install required Python dependencies (Sphinx etc.)
pip install -r docs/requirements.txt
# Enter the Sphinx project
cd docs/
# Run the raw sphinx-build command
sphinx-build -M html . _build/
You can also build the documentation locally with make
:
# Enter the Sphinx project
cd docs/
# Build with make
make html
# Open with your preferred browser, pointing it to the documentation index page
firefox _build/html/index.html
If you are new to Read the Docs, you may want to refer to the Read the Docs User documentation.
If you are copying this code in order to get started with your documentation, you need to:
- place your
docs/
folder alongside your Python project. If you are starting a new project, you can adapt the pyproject.toml example configuration. - use your existing project repository or create a new repository on Github, GitLab, Bitbucket or another host supported by Read the Docs
- copy
.readthedocs.yaml
and thedocs/
folder into your project. - customize all the files, replacing example contents.
- add your own Python project, replacing the
pyproject.toml
configuration andlumache.py
module. - rebuild the documenation locally to see that it works.
- finally, register your project on Read the Docs, see Importing Your Documentation.
To get started with Read the Docs, you may also refer to the Read the Docs tutorial. It provides a full walk-through of building an example project similar to the one in this repository.