freshcrate
Skin:/
Home > Frameworks > sphinx-autoapi

sphinx-autoapi

Sphinx API documentation generator

Why this rank:Strong adoptionRelease freshnessHealthy release cadence

Description

Sphinx AutoAPI ============== .. image:: https://readthedocs.org/projects/sphinx-autoapi/badge/?version=latest :target: https://sphinx-autoapi.readthedocs.org :alt: Documentation .. image:: https://github.com/readthedocs/sphinx-autoapi/actions/workflows/main.yml/badge.svg?branch=main :target: https://github.com/readthedocs/sphinx-autoapi/actions/workflows/main.yml?query=branch%3Amain :alt: Github Build Status .. image:: https://img.shields.io/pypi/v/sphinx-autoapi.svg :target: https://pypi.org/project/sphinx-autoapi/ :alt: PyPI Version .. image:: https://img.shields.io/pypi/pyversions/sphinx-autoapi.svg :target: https://pypi.org/project/sphinx-autoapi/ :alt: Supported Python Versions .. image:: https://img.shields.io/badge/code%20style-ruff-000000.svg :target: https://docs.astral.sh/ruff/ :alt: Formatted with Ruff Sphinx AutoAPI is a Sphinx extension for generating complete API documentation without needing to load, run, or import the project being documented. In contrast to the traditional `Sphinx autodoc <https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html>`_, which requires manual authoring and uses code imports, AutoAPI finds and generates documentation by parsing source code. For more information, see `the full documentation <https://sphinx-autoapi.readthedocs.org>`_. Getting Started --------------- The following steps will walk through how to add AutoAPI to an existing Sphinx project. For instructions on how to set up a Sphinx project, see `Sphinx's documentation <https://www.sphinx-doc.org/en/master/usage/quickstart.html>`_. Installation ~~~~~~~~~~~~ AutoAPI can be installed through pip: .. code-block:: bash pip install sphinx-autoapi Next, add and configure AutoAPI in your Sphinx project's `conf.py`. .. code-block:: python extensions.append('autoapi.extension') autoapi_dirs = ['path/to/source/files', 'src'] When the documentation is built, AutoAPI will now generate API documentation into an `autoapi/` directory and add an entry to the documentation in your top level table of contents! To configure AutoAPI behaviour further, see the `Configuration documentation <https://sphinx-autoapi.readthedocs.io/en/latest/reference/config.html>`_. Contributing ------------ Running the tests ~~~~~~~~~~~~~~~~~ Tests are executed through `tox <https://tox.readthedocs.io/en/latest/>`_. .. code-block:: bash tox Code Style ~~~~~~~~~~ Code is formatted using `ruff <https://docs.astral.sh/ruff>`_. You can check your formatting using ruff format's check mode: .. code-block:: bash tox -e format You can also get ruff to format your changes for you: .. code-block:: bash ruff format Release Notes ~~~~~~~~~~~~~ Release notes are managed through `towncrier <https://towncrier.readthedocs.io/en/stable/index.html>`_. When making a pull request you will need to create a news fragment to document your change: .. code-block:: bash tox -e release_notes -- create --help Versioning ---------- We use `SemVer <https://semver.org/>`_ for versioning. For the versions available, see the `tags on this repository <https://github.com/readthedocs/sphinx-autoapi/tags>`_. License ------- This project is licensed under the MIT License. See the `LICENSE.rst <LICENSE.rst>`_ file for details.

Release History

VersionChangesUrgencyDate
3.8.0Imported from PyPI (3.8.0)Low4/21/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.8.0# Features * Autodoc-style directives can access members excluded by autoapi_options # Misc * #553 Low3/8/2026
v3.7.0# Features * Added autoapi.import warning for when AutoAPI directives are given non-existent objects * Adding autoapi_follow_symlinks, which allows api to traverse into symlinked directories when generating the API documentation. * Drop support for Python 3.9 and officially support Python 3.14 * Support rendering PEP-695 type parameters # Bugfixes * Render typing_extensions.TypeAlias like other type aliases (#520) * Fix PythonFunction.overloads typing when source code overload(s) doLow2/11/2026
v3.6.1# Bugfixes * Update the supported versions of astroid. Fix the breaking change to Import and pass in the AstroidManager to the AstroidBuilder (#536) Low10/6/2025
v3.6.0# Features - Render type aliases properly rather than as an assignment (#414) # Misc - Drop support for Python 3.8 - Fix readthedocs build Low2/18/2025
v3.5.0# Features * Can exclude directories from being documented (#312) # Bugfixes * Fix exception when calling a function imported from a wildcard (#508) * Remove usage of astroid alpha builds (#512) # Misc * #502, #510, #511 * Fix formatting failure in tests Low2/10/2025
v3.4.0# Features * NamedTuples that have been created with functional syntax are documented as a class (#485) # Misc * #484, #490, #498 Low11/30/2024
v3.3.3# Bugfixes * Document packages and modules under a single "submodules" heading (#450) * Fix crash when `__init__` is assigned to (#488) * Fix documenting incorrect attributes from `__init__` (#497) # Misc * #426, #462, #491, #492Low10/26/2024
v3.3.2# Bugfixes * Fix types missing from documentation generated by autodoc-style directives. (#473)Low9/25/2024
v3.3.1# Bugfixes * Fix all class members missing when documenting a module with the same name as a standard library module. Members inherited from the standard library can also have their skip value overridden by autoapi-skip-member. (#478) # Misc * Updated all github actions. Low9/2/2024
v3.3.0# Features * Do not document members inherited from standard library classes (#467) # Bugfixes * Fix instance attributes not being documented by inherited-members (#477) # Misc * #425 * Fix the parser returning a dictionary instead of a list in the empty parse scenario * Rename testenvs to all follow similar naming style Low8/29/2024
v3.2.1# Bugfixes - Fix error or duplicates definitions when ``__init__`` assigns to a property (#466)Low7/23/2024
v3.2.0# Features - functools.cached_property is considered a property (#436) # Bugfixes - Gracefully handle no objects being rendered (#448) - Fix ignoring undocumented instance attributes (#451) # Deprecations and Removals - Removed ability for autoapi_template_dir to be relative to cwd. This was supposed to have been retired in v3 (#457) - Removed autoapi_include_summaries option. This was supposed to have been retired in v3 # Misc - #428, #449Low7/20/2024
v3.1.2# Bugfixes - Fix imported members being rendered in modules (#452)Low6/20/2024
v3.1.1# Bugfixes - Fix private subpackages causing orphan pages (#446)Low5/23/2024
v3.1.0# Features - Objects can render to their own page (#226) - Render PEP-695 type aliases as TypeAlias assignments. (#414) # Bugfixes - Values are always rendered for TypeAlises and PEP-695 type aliases. (#224) - Fix submodule with `__init__.pyi` documented as `__init__` instead of submodule name (#398) - Fix IndexError when a module docstring contains only a heading (#412) - Preserve strings inside Literal type annotations (#423) - Stopped using xrefs in page titles (#427) - Fix uLow5/20/2024
v3.1.0b0# Features - Objects can render to their own page (#226) - Render PEP-695 type aliases as TypeAlias assignments. (#414) # Bugfixes - Values are always rendered for TypeAlises and PEP-695 type aliases. (#224) - Fix submodule with __init__.pyi documented as __init__ instead of submodule name (#398) - Fix IndexError when a module docstring contains only a heading (#412) - Preserve strings inside Literal type annotations (#423) - Stopped using xrefs in page titles (#427) - Fix emittinLow4/12/2024
v3.1.0a4# Features - Objects can render to their own page (#226) # Bugfixes - Children not present in `__all__` are not rendered. (#226) - Fix emitting ignore event twice for methods. (#226) - Corrected documentation around `imported-members` to reflect that it applies only to objects imported into a package, not modules. (#226) - Fix path error on Windows. (#226) - Fix submodule with `__init__.pyi` documented as `__init__` instead of submodule name (#398) - Fix IndexError when a moduLow3/24/2024
v3.1.0a3# Bugfixes - Rename "single page output" to "own page output". (#226) - Also added tests for own page output. (#226) - Fix some inherited members always being rendered. (#226) - Own page members of an entity are linked to after the docstring of the parent entity. (#226) - Fix entities below the "class" level that have their own page from rendering incorrectly. (#226)Low2/16/2024
v3.1.0a2# Bugfixes - Fix members inherited from Exception always being displayed (#226) Low2/16/2024
v3.1.0a1This is the first alpha release of version 3.1.0. This is being released as a pre-release version to allow users to test and give feedback about the changes relating to the new feature of allowing objects to render on their own page. # Features - Objects can render to their own page (#226) # Misc - #388Low2/1/2024
v3.0.0# Bugfixes - Ensure `tooltip` is always a `str` - Replaced usage of deprecated sphinx.util.status_iterator (#391) # Deprecations and Removals - Removed support for documenting languages other than Python (#248) - Removed support for Python 3.7 # Misc - #389, #390, #392, #407Low9/30/2023

Dependencies & License Audit

Loading dependencies...

Similar Packages

tqdmFast, Extensible Progress Meterv4.68.1
inspect-aiFramework for large language model evaluationsmain@2026-06-05
hypothesisThe property-based testing library for Pythonv6.155.2
bleachAn easy safelist-based HTML-sanitizing tool.main@2026-06-05
jupyter-clientJupyter protocol implementation and client librariesv8.9.0

More from pypi

markitdownUtility tool for converting various files to Markdown
fastapiFastAPI framework, high performance, easy to learn, fast to code, ready for production
djangoA high-level Python web framework that encourages rapid development and clean, pragmatic design.
flaskA simple framework for building complex web applications.

More in Frameworks

langchainThe agent engineering platform
deer-flowAn open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message gateway, it handles different levels of ta
tqdmFast, Extensible Progress Meter
simBuild, deploy, and orchestrate AI agents. Sim is the central intelligence layer for your AI workforce.