skillfed

sphobjinv

Sphinx objects.inv Inspection/Manipulation Tool

sphobjinv v2.4 160.2K downloads/30d#10,670 on PyPI91
Permissive license MIT Active released

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 sphobjinv

uv

uv add sphobjinv

poetry

poetry add sphobjinv

Installing 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

Development Status :: 5 - Production/StableEnvironment :: ConsoleFramework :: SphinxIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: DocumentationTopic :: Documentation :: SphinxTopic :: Software DevelopmentTopic :: Software Development :: DocumentationTopic :: Utilities

Tags

sphinx objects.inv inspectioncross-reference lookup sphinxinventory file manipulationsphinx documentation linkingintersphinx reference finder
sphinx-toolingdocumentation-automation

More Software Development packages

typing-extensions

Provides backported and experimental type hints…

permissive · top 100 on PyPI

numpy

NumPy provides an N-dimensional array object…

permissive · top 100 on PyPI

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

distlib

Distlib provides low-level packaging utilities…

permissive · top 1,000 on PyPI

intersphinx-registry

Provides a pre-built intersphinx mapping…

permissive · top 15,000 on PyPI

sphinx-hoverxref

Sphinx extension that displays tooltips with…

permissive · top 15,000 on PyPI

sphinxcontrib-django

A Sphinx extension that enhances autodoc output…

permissive · top 15,000 on PyPI

sphinx-copybutton

A Sphinx extension that adds a copy button to…

permissive · top 5,000 on PyPI

sphinx-needs

Sphinx-Needs is a Sphinx extension that lets…

permissive · top 15,000 on PyPI

sphinx-notfound-page

A Sphinx extension that generates a custom 404…

permissive · top 5,000 on PyPI

sphinx-panels

A Sphinx extension that adds directives for…

permissive · top 15,000 on PyPI

sphinxcontrib-serializinghtml

A Sphinx extension that outputs documentation…

permissive · top 1,000 on PyPI

sphinxcontrib-websupport

Provides a Python API to integrate…

permissive · top 5,000 on PyPI

nbsphinx

nbsphinx is a Sphinx extension that parses…

permissive · top 5,000 on PyPI