https://github.com/sphinx-contrib/requirements-txt
A sphinx extension to generate a rst/markdown to display the dependencies of a python package from requirement.txt. maintainers: @Freed-Wu
https://github.com/sphinx-contrib/requirements-txt
requirements-txt
Last synced: 2 months ago
JSON representation
A sphinx extension to generate a rst/markdown to display the dependencies of a python package from requirement.txt. maintainers: @Freed-Wu
- Host: GitHub
- URL: https://github.com/sphinx-contrib/requirements-txt
- Owner: sphinx-contrib
- License: gpl-3.0
- Created: 2023-09-02T07:34:53.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-19T07:12:09.000Z (about 1 year ago)
- Last Synced: 2025-02-12T02:22:48.827Z (3 months ago)
- Topics: requirements-txt
- Language: Python
- Homepage: https://sphinx-contrib-requirements-txt.readthedocs.io/
- Size: 43 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# sphinxcontrib-requirements-txt
[](https://sphinx-contrib-requirements-txt.readthedocs.io)
[](https://results.pre-commit.ci/latest/github/sphinx-contrib/requirements-txt/main)
[](https://github.com/sphinx-contrib/requirements-txt/actions)
[](https://codecov.io/gh/sphinx-contrib/requirements-txt)[](https://github.com/sphinx-contrib/requirements-txt/releases)
[](https://github.com/sphinx-contrib/requirements-txt/releases/latest)
[](https://github.com/sphinx-contrib/requirements-txt/issues)
[](https://github.com/sphinx-contrib/requirements-txt/issues?q=is%3Aissue+is%3Aclosed)
[](https://github.com/sphinx-contrib/requirements-txt/pulls)
[](https://github.com/sphinx-contrib/requirements-txt/pulls?q=is%3Apr+is%3Aclosed)
[](https://github.com/sphinx-contrib/requirements-txt/discussions)
[](https://github.com/sphinx-contrib/requirements-txt/milestones)
[](https://github.com/sphinx-contrib/requirements-txt/network/members)
[](https://github.com/sphinx-contrib/requirements-txt/stargazers)
[](https://github.com/sphinx-contrib/requirements-txt/watchers)
[](https://github.com/sphinx-contrib/requirements-txt/graphs/contributors)
[](https://github.com/sphinx-contrib/requirements-txt/graphs/commit-activity)
[](https://github.com/sphinx-contrib/requirements-txt/commits)
[](https://github.com/sphinx-contrib/requirements-txt/releases/latest)[](https://github.com/sphinx-contrib/requirements-txt/blob/main/LICENSE)
[](https://github.com/sphinx-contrib/requirements-txt)
[](https://github.com/sphinx-contrib/requirements-txt)
[](https://github.com/sphinx-contrib/requirements-txt)
[](https://github.com/sphinx-contrib/requirements-txt)
[](https://github.com/sphinx-contrib/requirements-txt)
[](https://github.com/sphinx-contrib/requirements-txt)[](https://pypi.org/project/sphinxcontrib-requirements-txt/#description)
[](https://pypi.org/project/sphinxcontrib-requirements-txt/#history)
[](https://pypi.org/project/sphinxcontrib-requirements-txt/#files)
[](https://pypi.org/project/sphinxcontrib-requirements-txt/#files)
[](https://pypi.org/project/sphinxcontrib-requirements-txt/#files)
[](https://pypi.org/project/sphinxcontrib-requirements-txt/#files)A sphinx extension to generate a rst/markdown to display the dependencies of
a python package from `requirement.txt`.## Usage
Take MyST as an example. rst is similar.
`requirement.txt`:
````kconfig
# To complete package names, a cache is needed.
# Every time you change template, the cache must be regenerated.
#
# ```shell
# $ pkgbuild-language-server --print-config cache
# /home/wzy/.cache/pacman.json
# ```pyalpm
# See .
git+git://gitlab.archlinux.org/pacman/namcap
`````docs/conf.py`:
```python
# ...
extensions = [
"myst_parser",
"sphinxcontrib.requirements_txt",
]
# ...
````docs/index.md`:
````markdown
```{requirements} ../requirements.txt
```
````Then:
```shell
cd docs && sphinx-build . _build/html
cd -
xdg-open docs/_build/html/index.html
```A generated markdown will be inserted and rendered. You see:

## Customize
````markdown
```{requirements} /the/path/of/requirements.txt
---
title: Dependence
template: /the/path/of/template.j2
---
```
````- `/the/path/of/requirements.txt` can be a glob expression.
- `title` can contain `{title}`, which will be converted to the base name of
requirement file. Such as `requirements/dev.txt` will be converted to `dev`.
- `template` is a jinja2 file. See [jinja2 syntax](https://docs.jinkan.org/docs/jinja2/templates.html)
and
[examples](https://github.com/sphinx-contrib/requirements-txt/blob/main/src/sphinxcontrib/requirements_txt/assets/jinja2).## Alternatives
- [sphinxcontrib-eval](https://github.com/sphinx-contrib/eval#generate-requirements-document)
See
[](https://sphinxcontrib-requirements-txt.readthedocs.io)
to know more.