https://github.com/cthoyt/apicuron-client
A python client for interacting with the APICURON curation metadatabase's RESTful API
Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.5%) to scientific vocabulary
Repository
A python client for interacting with the APICURON curation metadatabase's RESTful API
Basic Info
- Host: GitHub
- Owner: cthoyt
- License: mit
- Language: Python
- Default Branch: main
- Size: 74.2 KB
Statistics
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
APICURON Client
An unofficial client for interacting with the APICURON curation metadatabase.
💪 Getting Started
The following example shows how you can prepare a submission of a new resource
to APICURON. Because apicuron_client uses PyDantic under the hood, the JSON
is validated and automatically converted into programmatic models. The
Description.update_remote() function takes care of interacting with the API
and loading the APICURON_TOKEN from the environment or a config file with
pystow.
```python from apicuron_client import Description
payload = { "resourceid": "Biomappings", "resourcename": "Biomappings", "resourceuri": "https://biomappings.github.io/biomappings/", "resourceurl": "https://biomappings.github.io/biomappings/", "resourcelongname": "Biomappings", "resourcedescription": "Community curated and predicted equivalences and related mappings between named biological entities that are not available from primary sources.", "termsdef": [ { "activityterm": "novelcuration", "activityname": "Curated novel mapping", "activitycategory": "generation", "score": 50, "description": "Curated a novel mapping between two entities" }, { "activityterm": "validateprediction", "activityname": "Validate predicted mapping", "activitycategory": "generation", "score": 50, "description": "Affirmed the correctness of a predicted mapping" }, { "activityterm": "invalidateprediction", "activityname": "Invalidate predicted mapping", "activitycategory": "generation", "score": 50, "description": "Affirmed the incorrectness of a predicted mapping" } ], "achievementsdef": [ { "category": "1", "name": "Newbie curator", "countthreshold": 10, "type": "badge", "listterms": [ "novelcuration", "validateprediction", "invalidateprediction" ], "colorcode": "#055701" } ] } description = Description(**payload) description.updateremote() ```
The results can then be seen on the APICURON website at https://apicuron.org/database?resource_uri=https:%2F%2Fbiomappings.github.io%2Fbiomappings%2F.
🚀 Installation
The most recent release can be installed from PyPI with:
bash
$ pip install apicuron_client
The most recent code and data can be installed directly from GitHub with:
bash
$ pip install git+https://github.com/cthoyt/apicuron-client.git
To install in development mode, use the following:
bash
$ git clone git+https://github.com/cthoyt/apicuron-client.git
$ cd apicuron-client
$ pip install -e .
👐 Contributing
Contributions, whether filing an issue, making a pull request, or forking, are appreciated. See CONTRIBUTING.rst for more information on getting involved.
👀 Attribution
⚖️ License
The code in this package is licensed under the MIT License.
📖 Citation
This project isn't officially from the APICURON team, but if you like it, please cite their paper:
bibtex
@article{Hatos2021,
author = {Hatos, Andr{\'{a}}s and Quaglia, Federica and Piovesan, Damiano and Tosatto, Silvio C E},
doi = {10.1093/database/baab019},
issn = {1758-0463},
journal = {Database},
month = {apr},
title = {{APICURON: a database to credit and acknowledge the work of biocurators}},
url = {https://academic.oup.com/database/article/doi/10.1093/database/baab019/6244733},
volume = {2021},
year = {2021}
}
Acknowledgements
🍪 Cookiecutter
This package was created with @audreyfeldroy's cookiecutter package using @cthoyt's cookiecutter-snekpack template.
🛠️ For Developers
The final section of the README is for if you want to get involved by making a code contribution.
❓ Testing
After cloning the repository and installing tox with pip install tox, the unit tests in the tests/ folder can be
run reproducibly with:
shell
$ tox
Additionally, these tests are automatically re-run with each commit in a GitHub Action.
📦 Making a Release
After installing the package in development mode and installing
tox with pip install tox, the commands for making a new release are contained within the finish environment
in tox.ini. Run the following from the shell:
shell
$ tox -e finish
This script does the following:
- Uses BumpVersion to switch the version number in the
setup.cfgandsrc/apicuron_client/version.pyto not have the-devsuffix - Packages the code in both a tar archive and a wheel
- Uploads to PyPI using
twine. Be sure to have a.pypircfile configured to avoid the need for manual input at this step - Push to GitHub. You'll need to make a release going with the commit where the version was bumped.
- Bump the version to the next patch. If you made big changes and want to bump the version by minor, you can
use
tox -e bumpversion minorafter.
Owner
- Name: Charles Tapley Hoyt
- Login: cthoyt
- Kind: user
- Location: Bonn, Germany
- Company: RWTH Aachen University
- Website: https://cthoyt.com
- Repositories: 489
- Profile: https://github.com/cthoyt
GitHub Events
Total
Last Year
Committers
Last synced: about 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Charles Tapley Hoyt | c****t@g****m | 33 |
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 51 last-month
- Total dependent packages: 1
- Total dependent repositories: 1
- Total versions: 6
- Total maintainers: 1
pypi.org: apicuron-client
A client for interacting with APICURON
- Homepage: https://github.com/cthoyt/apicuron-client
- Documentation: https://apicuron-client.readthedocs.io/
- License: MIT
-
Latest release: 0.1.3
published over 4 years ago