scverse_doc.registry#

The scverse package registry.

packages and core_packages() give the listed packages as Package objects; intersphinx() turns them into an intersphinx_mapping, whole or in part.

Set up as an extension, it defaults intersphinx_mapping to intersphinx(), so linking into the core packages needs nothing in conf.py. See intersphinx() for more.

scverse_doc.registry.packages: Mapping[str, Package] = <scverse_doc.registry._Packages object>#

Every registered package, keyed and ordered by case-folded name.

scverse_doc.registry.core_packages() → Mapping[str, Package][source]#

Return only the core packages.

scverse_doc.registry.intersphinx(*extra: str, external: bool = True, core: bool = True) → ChainMap[str, tuple[str, None]][source]#

Build an intersphinx_mapping for this package.

Every entry is an inventory fetched on every build, so the ecosystem is opt-in by name.

Parameters:
  • extra – Additional registry package names to include, e.g. intersphinx("scanpy", "muon"). Unknown names raise KeyError, ones without an inventory ValueError, both on first use of the mapping rather than here.

  • external – Whether to include the non-scverse inventories (Python, NumPy, SciPy, pandas, Matplotlib).

  • core – Whether to include the core packages that publish an inventory.

Examples

>>> intersphinx_mapping = intersphinx("scanpy")
>>> intersphinx_mapping["scanpy"]
('https://scanpy.scverse.org/...', None)
>>> intersphinx_mapping = intersphinx() | {"my_package": ("...", None)}
>>> intersphinx_mapping["my_package"]
('...', None)
class scverse_doc.registry.Package(name: str, kind: Literal['core', 'ecosystem'], docs: str, inventory: str | None = None, repo: str | None = None, description: str = '', accent: str = '#262fb5')[source]#

One entry in the scverse package registry.

accent: str#

The package’s brand accent, falling back to the scverse deep blue.

description: str#

One-line summary of the package.

docs: str#

Where to send a reader – a link for humans, not necessarily a documentation root.

inventory: str | None#

Root URL under which objects.inv resolves, or None if the package publishes none.

kind: Literal['core', 'ecosystem']#

Whether the package is maintained by the core team or listed as an ecosystem package.

name: str#

The package’s display name, e.g. "scvi-tools".

repo: str | None#

URL of the source repository, if the package lists one.