griffe2md
Output API docs to Markdown using Griffe.
What it is and what it does
griffe2md is a command-line tool that converts Python package API documentation into Markdown files. It uses Griffe, a static analysis library, to parse your package's structure and docstrings, then renders them as formatted Markdown suitable for documentation sites or repositories. The tool supports multiple docstring styles (configurable via pyproject.toml or griffe2md.toml) and can output to stdout or directly to a file.
You run it by pointing it at a package name or folder path, and it generates structured Markdown with your API's classes, functions, and their documentation. It's designed for developers who want to maintain API docs in Markdown format without manually writing or updating them, integrating easily into documentation workflows alongside tools like mdformat for consistent formatting.
Use it for:
- Generate API reference documentation for a Python package to include in a README or docs site
- Automate API doc generation in CI/CD pipelines to keep docs in sync with code changes
- Convert existing docstrings to Markdown format for migration to a new documentation system
- Create Markdown API docs for packages that use Sphinx-style docstrings without needing Sphinx itself
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Generates Markdown API documentation from Python packages using Griffe's static analysis, with support for multiple docstring styles and configurable output.
Yes. Low install friction, active maintenance, no known vulnerabilities, and a permissive license make it a straightforward choice. Install it if you need to generate Markdown API docs from Python packages; the command-line interface is simple and the configuration is minimal.
Install
griffe2md on PyPI
pip
pip install griffe2mduv
uv add griffe2mdpoetry
poetry add griffe2mdInstalling griffe2md
Before you install
Low friction install with a pure Python wheel. Actively maintained with recent releases; last commit 2026-03-12 and marked as active status.
License in practice
ISC license is permissive, allowing commercial and private use with minimal restrictions.
Quickstart
pip install griffe2md
griffe2md package_name -o docs.md
Requires Python 3.10 or later.
Verify before relying
- Whether Griffe's static analysis covers all Python docstring formats beyond the documented sphinx style
- Performance characteristics when processing large or deeply nested packages
Package facts
| License | ISC (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — griffelib, jinja2, mdformat, tomli |
| Maintenance | actively maintained — 155 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 276,930/month — #8,154 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: griffe2md-1.5.0-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
griffe-pydanticExtends Griffe to automatically extract and…
permissive · top 15,000 on PyPI
mkdocstrings-pythonGenerates API documentation for Python projects…
permissive · top 5,000 on PyPI
griffeGriffe extracts the complete structure and…
permissive · top 1,000 on PyPI
haystack-pydoc-toolsGenerates Docusaurus-compatible Markdown API…
permissive · top 15,000 on PyPI
griffe-warnings-deprecatedExtends Griffe to recognize and render PEP 702…
permissive · top 15,000 on PyPI
mkdocstringsAn MkDocs plugin that automatically generates…
permissive · top 5,000 on PyPI
sphinx-autodoc2sphinx-autodoc2 generates API documentation for…
permissive · top 15,000 on PyPI
mkdocs-api-autonavAutomatically generates API reference…
permissive · top 15,000 on PyPI
griffe-typingdocGriffe extension that enables inline…
permissive · top 15,000 on PyPI
mkdocstrings-python-legacyA legacy Python documentation handler for…
permissive · top 15,000 on PyPI