skillfed

pdoc

API Documentation for Python Projects

pdoc v16.0.0 2.2M downloads/30d#3,208 on PyPI2,511
Permissive license MIT-0 Active released

What it is and what it does

pdoc is a command-line tool that generates standalone HTML API documentation directly from Python source code and docstrings. It parses type annotations, docstrings (including numpydoc and Google styles), and module structure to produce browsable documentation without requiring external build systems. The tool includes a built-in web server with live reloading for development, and outputs self-contained HTML that requires no additional runtime dependencies.

It's designed around simplicity: parse your module, generate docs, done. pdoc respects `__all__` declarations, automatically links identifiers in docstrings to their definitions, and handles forward references in type annotations. For projects with straightforward documentation needs, it offers a lightweight alternative to heavier frameworks, though the description notes that substantially more complex documentation needs may be better served by other tools.

Use it for:

  • Generate quick API reference docs for a Python library during development with live-reload feedback.
  • Publish standalone HTML documentation for a package without setting up Sphinx or other build infrastructure.
  • Create browsable docs for internal tools or scripts where type annotations and docstrings already exist.
  • Automatically document class constructors and inherited members by traversing the abstract syntax tree.
  • Host API docs on a simple web server during development to review documentation alongside code changes.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

pdoc generates API documentation for Python projects by parsing source code and docstrings into standalone HTML, with a built-in web server and live reloading.

Yes. pdoc is production-stable, actively maintained, permissively licensed, and has low install friction. Install it if you need quick, zero-configuration HTML documentation from Python docstrings and type hints. Skip it only if your project requires the advanced customization or cross-project linking that heavier documentation frameworks provide.

Install

pdoc on PyPI

pip

pip install pdoc

uv

uv add pdoc

poetry

poetry add pdoc

Installing pdoc

Before you install

Low friction install with four runtime dependencies (Jinja2, pygments, MarkupSafe, markdown2). Actively maintained with recent commits; last release 291 days ago and repository shows 2511 stars.

License in practice

MIT-0 (public domain equivalent) means you can use, modify, and distribute pdoc with no restrictions or attribution requirements.

Quickstart

pip install pdoc
pdoc your_python_module
# or
pdoc ./my_project.py
# View pdoc's own docs:
pdoc pdoc

Requires Python 3.10 or newer.

Verify before relying

  • Whether customizable HTML templates support all common documentation layouts without additional tooling.
  • Performance characteristics when documenting very large codebases or deeply nested module hierarchies.

Package facts

License MIT-0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — Jinja2, pygments, MarkupSafe, markdown2
Maintenance actively maintained — 291 days since the last release
Last repo commit
First released
Downloads 2,209,751/month — #3,208 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pdoc-16.0.0-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: Public DomainOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: DocumentationTopic :: Software Development :: DocumentationTopic :: UtilitiesTyping :: Typed

Tags

python api documentation generatorauto-generate html docs from docstringsmarkdown documentation toolpython code to html docsapi doc generatordocstring parsertype annotation documentation
documentation-generationcli-tooltype-hints

More Utilities packages