sphobjinv
Sphinx objects.inv Inspection/Manipulation Tool
What it is and what it does
sphobjinv reads and manipulates Sphinx objects.inv files—the binary inventories that Sphinx generates to enable cross-referencing between documentation sets. It provides both a command-line tool and a Python API to search for objects by name, inspect their metadata, and export inventories in multiple formats (plain text, JSON, or re-compressed zlib). The primary use case is discovering the exact syntax needed for Sphinx cross-references: given a documentation URL or local inventory file, you can search for a symbol and get back its proper inline directive form (e.g., `:func:`numpy.linspace``), which is often non-obvious from the documentation alone.
The package depends on attrs, certifi, and jsonschema for data modeling, HTTPS support, and schema validation. It supports Python 3.10 through 3.14 and is actively maintained. The tool is particularly useful when writing documentation that cross-references external projects or when you need to programmatically create or modify inventory files for custom documentation workflows.
Use it for:
- Discover the correct Sphinx cross-reference syntax for a function or class in an external library's documentation.
- Search a local Sphinx build's objects.inv to find available symbols and their proper reference forms.
- Convert a Sphinx inventory file to plain text or JSON for inspection or modification.
- Programmatically create or edit objects.inv files to enable intersphinx cross-references in custom documentation.
- Determine the intersphinx_mapping URL for a remote documentation set by querying its inventory.
- Automate inventory export and re-compression for documentation build pipelines.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Inspect, search, and manipulate Sphinx objects.inv inventory files from the command line or Python API, enabling precise cross-reference discovery and inventory editing.
Yes. sphobjinv solves a real friction point in Sphinx documentation workflows—finding the correct cross-reference syntax is tedious without it. Low install friction, active maintenance, no known vulnerabilities, permissive license, and a clean API make it a low-risk addition. Install it if you write Sphinx documentation or manage documentation builds.
Install
sphobjinv on PyPI
pip
pip install sphobjinvuv
uv add sphobjinvpoetry
poetry add sphobjinvInstalling sphobjinv
Before you install
Low install friction with only three lightweight runtime dependencies (attrs, certifi, jsonschema). Active maintenance with a recent release; last commit 2026-03-23 and repository not archived.
License in practice
MIT license (permissive) permits commercial and private use with minimal restrictions; documentation is separately licensed under CC-BY 4.0.
Quickstart
pip install sphobjinv
import sphobjinv as soi
inv = soi.Inventory('doc/build/html/objects.inv')
print(inv.project, inv.version)
Requires Python 3.10 or later.
Verify before relying
- Whether the fuzzy matching algorithm (referenced in description) is built-in or depends on an optional external package.
- Performance characteristics when working with very large inventory files.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — attrs, certifi, jsonschema |
| Maintenance | actively maintained — 144 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 160,217/month — #10,670 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: sphobjinv-2.4-py3-none-any.whl
Keywords: sphinx, sphinx-doc, inventory, manager, inspector
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
intersphinx-registryProvides a pre-built intersphinx mapping…
permissive · top 15,000 on PyPI
sphinx-hoverxrefSphinx extension that displays tooltips with…
permissive · top 15,000 on PyPI
sphinxcontrib-djangoA Sphinx extension that enhances autodoc output…
permissive · top 15,000 on PyPI
sphinx-copybuttonA Sphinx extension that adds a copy button to…
permissive · top 5,000 on PyPI
sphinx-needsSphinx-Needs is a Sphinx extension that lets…
permissive · top 15,000 on PyPI
sphinx-notfound-pageA Sphinx extension that generates a custom 404…
permissive · top 5,000 on PyPI
sphinx-panelsA Sphinx extension that adds directives for…
permissive · top 15,000 on PyPI
sphinxcontrib-serializinghtmlA Sphinx extension that outputs documentation…
permissive · top 1,000 on PyPI
sphinxcontrib-websupportProvides a Python API to integrate…
permissive · top 5,000 on PyPI
nbsphinxnbsphinx is a Sphinx extension that parses…
permissive · top 5,000 on PyPI