📝 docs(sphinx): add Sphinx documentation site#557
Merged
gaborbernat merged 1 commit intotox-dev:mainfrom Mar 23, 2026
Merged
Conversation
pipdeptree's documentation lived entirely in README.md, limiting discoverability and making it hard to organize growing content like output format examples and CLI reference. Sphinx with furo theme mirrors the virtualenv project's docs setup and enables ReadTheDocs hosting. All examples use real pipdeptree output from the dev environment. sphinx-argparse-cli auto-generates the CLI reference from the argparse parser so it stays in sync with the code. Also fixes mermaid output to use <br/> instead of \n for node label line breaks, since Mermaid's JS renderer treats \n as literal text.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
pipdeptree's documentation has lived entirely in
README.md, which made it hard to organize growing content like output format examples, CLI reference, and usage patterns into a discoverable structure.📝 This adds a full Sphinx documentation site using the furo theme, mirroring the virtualenv project's docs setup. The site follows the Diataxis framework with tutorial, how-to guides, reference, and explanation sections. Every pipdeptree command example shows real output from the dev environment so nothing is fabricated. The CLI reference uses
sphinx-argparse-clito auto-generate from the argparse parser, keeping it permanently in sync with the code. Mermaid diagrams throughout visualize dependency graphs, conflict detection, and the internal architecture.🔧 Build infrastructure includes a
tox -e docsenvironment withsphinx-build -W(warnings as errors), a.readthedocs.ymlfor RTD hosting, anddocsadded to the CI matrix. Also fixes the mermaid renderer to use<br/>instead of\nfor node label line breaks, since Mermaid's JS renderer treats\nas literal text.