afuetterer / python-re3data

The Pythonic client for the re3data API.
https://afuetterer.github.io/python-re3data/
MIT License
1 stars 0 forks source link
api api-client metadata python re3data research-data research-data-management research-data-repository

python-re3data: The Pythonic client for the re3data API.

⚠️ Please note that this project is currently under active development. As such, it is considered a work in progress, and breaking changes may be introduced at any time. We encourage users to frequently check back for updates and to exercise caution when using this project in production environments. Contributions and feedback are welcome to help move the project towards a more stable release (v1.0.0).

CI pre-commit.ci status ci coverage codeql
Docs docs
Package pypi-status pypi-version pypi-python-versions all-downloads monthly-downloads
Meta doi OpenSSF Scorecard hatch ruff mypy License

python-re3data is a Python library that simplifies interacting with the re3data (Registry of Research Data Repositories) REST API, allowing you to easily retrieve and process metadata about research data repositories in a convenient and Pythonic way.

>>> import re3data
>>> response = re3data.repositories.list()
>>> response
[RepositorySummary(id='r3d100010468', doi='https://doi.org/10.17616/R3QP53', name='Zenodo', link=Link(href='https://www.re3data.org/api/beta/repository/r3d100010468', rel='self'))]
... (remaining repositories truncated)
>>> response = re3data.repositories.get("r3d100010468")
>>> response
Repository(re3data_org_identifier='r3d100010468', repository_name=RepositoryName(value='Zenodo', language=<Languages.ENG: 'eng'>), additional_name=[], repository_url='https://zenodo.org/', repository_identifier=['FAIRsharing_doi:10.25504/FAIRsharing.wy4egf', 'RRID:SCR_004129', 'RRID:nlx_158614'])
... (remaining fields truncated)

Features

Requirements

Python >= 3.10

python-re3data is built with:

Installation

You can install python-re3data via pip from PyPI:

python -m pip install python-re3data

or pull the Docker image from GHCR:

docker pull ghcr.io/afuetterer/python-re3data:latest

For a more detailed guide, see Installation.

Documentation

The documentation is made with Material for MkDocs and is hosted by GitHub Pages.

Similar Projects

There are a couple of similar projects available on GitHub, e.g. via the topic re3data. Among them are these implementations in Python:

Project Description Last commit
py3data py3data is a lightweight and thin Python interface to the beta version of the API. last-commit

License

python-re3data is distributed under the terms of the MIT License.