PyDoctor
pydoctor.readthedocs.io
Spec sheet
- Purpose
- PyDoctor is a standalone API documentation generator that uses static analysis of Python source code.Read 5 Oct 2026 · github.com
- Intended users
- The documentation says pydoctor is probably best suited to documenting libraries with some degree of internal subclassing.Read 5 Oct 2026 · pydoctor.readthedocs.io
- API pages
- Pydoctor generates a page for each class, module, and package, and presents information using tables.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Best fit
- The FAQ describes PyDoctor as probably best suited to documenting libraries with some degree of internal subclassing.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Configuration
- Pydoctor supports configuration through pydoctor.ini, pyproject.toml, and setup.cfg files.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Customization
- The CLI provides options for themes, custom HTML templates, and which API objects to document.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Docstring formats
- It supports epytext, reStructuredText, Google-style, NumPy-style, and plain text docstrings.Read 5 Oct 2026 · github.com
- Generated output
- PyDoctor generates static HTML pages that need no additional server-side support.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Imports and inheritance
- It resolves imports and computes inheritance hierarchies.Read 5 Oct 2026 · github.com
- Inheritance and imports
- The tool works to resolve imports and calculate inheritance hierarchies.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Installation
- The documentation gives installation instructions through PyPI with pip and on Debian derivatives with apt.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Interface support
- It supports zope.interface and can show which classes implement which interfaces, and vice versa.Read 5 Oct 2026 · github.com
- Maintainer context
- The FAQ says PyDoctor was written for the Twisted project, whose needs remain the main driving force for its development.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Notable limitation
- Pydoctor cannot infer types for computed values, so those need annotations for the type to appear in the generated documentation.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Notable Python version limit
- The project changelog says Python 3.8 support was dropped in version 25.4.0.Read 5 Oct 2026 · github.com
- Output
- It generates static HTML files that can be served without extra server-side support.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Output organization
- PyDoctor generates one page per class, module, and package, and presents information using tables.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Project background
- Pydoctor was written primarily to replace epydoc for the Twisted project, and Twisted remains a main driver of its development.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Publishing
- The documentation gives examples for publishing generated API docs with GitHub Pages and Read the Docs.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Security policy
- The project says it follows Twisted’s security policy and directs security reports to GitHub Security Advisories.Read 5 Oct 2026 · github.com
- Sphinx integration
- The FAQ says Sphinx narrative documentation can link to API documentation formatted by PyDoctor.Read 5 Oct 2026 · pydoctor.readthedocs.io
- Supported systems
- The project changelog says it runs on Windows without requiring administrator privileges and describes testing supported platform combinations including Linux, macOS, and Windows.Read 5 Oct 2026 · github.com
- Zope interfaces
- Pydoctor recognizes zope.interface declarations and can show which classes implement which interfaces, and vice versa.Read 5 Oct 2026 · pydoctor.readthedocs.io
Where Specifiction places it
- Documentation Generators#22 of 377.4