Skip to main content

invenio-pidbox

InvenioRDM integration for people and organization profile templates backed by the commonmeta SQLite store.

Features

  • Ships people and organization profile templates for InvenioRDM
  • Injects template context for /people/ and /organizations/ routes
  • Reads ORCID and ROR profiles from the commonmeta SQLite store via commonmeta-py and commonmeta-rs
  • Uses the pid_annotations cache layer instead of application-specific people or organizations tables
  • Mirrors the profile integration approach used in rogue-scholar

Requirements

  • Python 3.14+
  • A commonmeta SQLite database readable through commonmeta-rs

The extension resolves profile data from the path configured in PIDBOX_SQLITE_PATH. Internally, commonmeta-rs reads pid_annotations records with source_id 4 for people (ORCID) and source_id 3 for organizations (ROR).

Installation

uv add invenio-pidbox

This package depends on commonmeta-py, commonmeta-rs, and invenio-app-rdm at runtime, so installing invenio-pidbox pulls in the profile backend automatically.

If the profile store lives outside the default commonmeta location, configure PIDBOX_SQLITE_PATH in your Invenio application.

How It Works

When a request path matches /people/ or /organizations/, the extension loads the corresponding commonmeta record from SQLite and exposes template-friendly objects such as person, organization, employment, identifiers, relations, location, orcid, ror, and search_config.

The extension also registers default profile routes and a country_name template filter so it can run against a standard invenio-app-rdm installation.

Development

uv sync --extra tests
uv run pytest

Entry points

Group Name Value
invenio_base.apps invenio_pidbox invenio_pidbox.ext:InvenioPidbox
invenio_base.api_apps invenio_pidbox invenio_pidbox.ext:InvenioPidbox

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

invenio_pidbox-0.1.2.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

invenio_pidbox-0.1.2-py3-none-any.whl (21.9 kB view details)

Uploaded Python 3

File details

Details for the file invenio_pidbox-0.1.2.tar.gz.

File metadata

  • Download URL: invenio_pidbox-0.1.2.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for invenio_pidbox-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b61f7838e15c1a731b1bd6efe04b2d51493ceab76b54b8d063a7d118eafe5605
MD5 fc22d5816c433fd011cf3a2d13e67f64
BLAKE2b-256 81de77986f4e8041dbcf2dabfc1d647bda19259098f7130964bf3a112fa11d49

See more details on using hashes here.

File details

Details for the file invenio_pidbox-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: invenio_pidbox-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 21.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for invenio_pidbox-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dc2051bff7180c8c3cb4b14629a9c09686ff4c3205610745c72823f45e6643a2
MD5 c6fef6509ff8f124a3b8dc2e11751021
BLAKE2b-256 419b3ac662135b9201c9dc2a3ad5b74eab6a8c3635f6a06c42c9b7dfe0203463

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page