readme-renderer
readme_renderer is a library for rendering readme descriptions for Warehouse
Install
readme-renderer on PyPI
pip
pip install readme-rendereruv
uv add readme-rendererpoetry
poetry add readme-rendererPackage facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — nh3, docutils, Pygments |
| Maintenance | actively maintained — 65 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: readme_renderer-45.0-py3-none-any.whl
About readme-renderer
from the package's own PyPI description — quoted content, verbatim
Readme Renderer
.. image:: https://badge.fury.io/py/readme-renderer.svg :target: https://badge.fury.io/py/readme-renderer
.. image:: https://github.com/pypa/readme_renderer/actions/workflows/ci.yml/badge.svg :target: https://github.com/pypa/readme_renderer/actions/workflows/ci.yml
Readme Renderer is a library that will safely render arbitrary
README files into HTML. It is designed to be used in Warehouse_ to
render the long_description for packages. It can handle Markdown,
reStructuredText (.rst), and plain text.
.. _Warehouse: https://github.com/pypa/warehouse
Check Description Locally
To locally check whether your long descriptions will render on PyPI, first build your distributions, and then use the |twine check|_ command.
Code of Conduct
Everyone interacting in the readme_renderer project's codebases, issue trackers,
chat rooms, and mailing lists is expected to follow the PSF Code of Conduct_.
Contributing
Contributions are welcome. See CONTRIBUTING.md_ for setup and testing.
.. |twine check| replace:: twine check
.. _twine check:...
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Safely renders README files in Markdown, reStructuredText, and plain text into HTML, designed for PyPI package documentation display.
Low friction: pure Python wheel with three lightweight runtime dependencies (nh3, docutils, Pygments). Actively maintained with a recent release 65 days ago and ongoing repository activity.
Apache-2.0 permissive license allows commercial and private use with minimal restrictions, typical for infrastructure tooling in the Python packaging ecosystem.
Usage
pip install readme-renderer
from readme_renderer.rst import render
html = render(open('README.rst').read())
Requires Python 3.10 or later; nh3, docutils, and Pygments must be available at runtime.
Verdict: Stable, actively maintained library with no known vulnerabilities and permissive licensing. Low install friction and broad Python version support (3.10–3.14) make it a reliable choice for rendering package documentation. Part of the official PyPA toolchain.
Needs verification
- Whether the package handles all edge cases in malformed markup without degradation or data loss.
- Performance characteristics when rendering very large README files or complex nested structures.
Similar packages
permissive · top 1,000 on PyPI
rich-rstpermissive · top 1,000 on PyPI
virtualenvpermissive · top 100 on PyPI
docutilsunclear · top 1,000 on PyPI
tabulatepermissive · top 1,000 on PyPI
twinepermissive · top 1,000 on PyPI
Jinja2permissive · top 100 on PyPI
pymupdfagpl · top 1,000 on PyPI
Sphinxpermissive · top 1,000 on PyPI
MarkupSafepermissive · top 100 on PyPI