Tutorials¶
These tutorials will guide you through how to start using AutoAPI. They will assume that you already have a basic Sphinx project set up. If you are not sure how to do this, you can follow the Getting started guide in the Sphinx documentation.
Setting up Automatic API Documentation Generation¶
The recommended way of installing AutoAPI is through a virtualenv. Once you have a virtualenv set up, you can install AutoAPI with the command:
pip install sphinx-autoapi
To enable the extension,
we need to add it to the list of extensions in Sphinx’s conf.py
file:
extensions = ['autoapi.extension']
There is only one required configuration option that we need to set.
autoapi_dirs
tells AutoAPI which directories contain
the source code to document.
These can either be absolute, or relative to the source directory of
your documentation files.
For example, say we have a package and we have used sphinx-quickstart
to create a Sphinx project in a docs/
folder.
The directory structure might look like this:
mypackage/
├── docs
│ ├── _build
│ ├── conf.py
│ ├── index.rst
│ ├── make.bat
│ ├── Makefile
│ ├── _static
│ └── _templates
├── mypackage
│ ├── _client.py
│ ├── __init__.py
│ └── _server.py
└── README.md
sphinx-quickstart
sets up the sphinx-build
to run from
inside the docs/
directory, and the source code is one level up.
So the value of our autoapi_dirs
option would be:
autoapi_dirs = ['../mypackage']
If you are documenting many packages,
you can point AutoAPI to the directory that contains those packages.
For example if our source code was inside a src/
directory:
mypackage/
├── docs
│ ├── _build
│ ├── conf.py
│ ├── index.rst
│ ├── make.bat
│ ├── Makefile
│ ├── _static
│ └── _templates
├── README.md
└── src
└── mypackage
├── _client.py
├── __init__.py
└── _server.py
We can configure autoapi_dirs
to be:
autoapi_dirs = ['../src']
Now that everything is configured, AutoAPI will generate documentation when you run Sphinx!
cd docs/
sphinx-build -b html . _build
With the documentation successfully built you should now be able to open
the _build/index.html
file in a web browser.
The page will have a table of contents with a link to API reference
documentation that has been generated by AutoAPI.
Next, you might want to customise what gets documented or customise or remove the API reference index page.