Tools for AI-READI
Project description
pyfairdatatools
Python package for the FAIR tools of fairhub.io
Documentation · Changelog · Report Bug · Request Feature
Description
pyfairdatatools is a Python package that includes functions of fairhub.io for making data FAIR. This consists of a collection of helpful functions for extracting, transforming raw data, generating relevant metadata files and validating the data and metadata files against the FAIR guidelines adopted by the AI-READI project. Beside supporting fairhub.io, our aim is that the package can be used by anyone wanting to make their data FAIR according to the AI-READI FAIR guidelines.
Getting started
Prerequisites/Dependencies
You will need the following installed on your system:
Installing
Install it directly into an activated virtual environment:
pip install pyfairdatatools
or add it to your Poetry project:
poetry add pyfairdatatools
Usage
After installation, the package can be imported:
$ python
>>> import pyfairdatatools
>>> pyfairdatatools.__version__
Inputs and Outputs
The input of most functions will be a json format schema (see "Standards followed" sections) that contain data and metadata related information. The outputs of most functions will be standards metadata files, structured data, etc.
Standards followed
This software is being developed following the Software Development Best Practices of the AI-READI Project, which include following the FAIR-BioRS guidelines. Amongs other, we are following closely the PEP 8 Style Guide for Python Code.
The input structure of the function is currently being developed but anticipated to follow existing schemas such as schema.org and bioschemas.org.
Contributing
Contributions are always welcome!
If you are interested in reporting/fixing issues and contributing directly to the code base, please see CONTRIBUTING.md for more information on what we're looking for and how to get started.
Issues and Feedback
To report any issues with the software, suggest improvements, or request a new feature, please open a new issue via the Issues tab. Provide adequate information (operating system, steps leading to error, screenshots) so we can help you efficiently.
Setup
If you would like to update the package, please follow the instructions below.
-
Create a local virtual environment and activate it:
python -m venv .venv source .venv/bin/activate
If you are using Anaconda, you can create a virtual environment with:
conda create -n pyfairdatatools-env python conda activate pyfairdatatools-env
-
Install the dependencies for this package. We use Poetry to manage the dependencies:
pip install poetry==1.3.2 poetry install
You can also use version 1.2.0 of Poetry, but you will need to run
poetry lock
after installing the dependencies. -
Add your modifications and run the tests. You can also use the command
poe test
for running the tests.poetry run pytest
If you need to add new python packages, you can use Poetry to add them:
poetry add <package-name>
-
Format the code:
poe format
-
Check the code quality:
poetry run flake8 pyfairdatatools tests
-
Run the tests and check the code coverage:
poe test poe test --cov=pyfairdatatools
-
Build the package:
Update the version number in
pyproject.toml
andpyfairdatatools/__init__.py
and then run:poetry build
-
Publish the package:
poetry publish
Set your API token for PyPI in your environment variables:
poetry config pypi-token.pypi your-api-token
License
This work is licensed under MIT. See LICENSE for more information.
How to cite
If you are using this package or reusing the source code from this repository for any purpose, please cite:
Coming soon...
Acknowledgements
This project is funded by the NIH under award number 1OT2OD032644. The content is solely the responsibility of the authors and does not necessarily represent the official views of the NIH.
Add any other acknowledgements here.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pyfairdatatools-1.0.2.tar.gz
.
File metadata
- Download URL: pyfairdatatools-1.0.2.tar.gz
- Upload date:
- Size: 68.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/6.2.0-1015-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1888a54f7c965a753a09e26e407fa15ddfd0def9d487b480e4ebab510840c3f |
|
MD5 | cde20d00f810a549d06be2e7580f78a8 |
|
BLAKE2b-256 | bed39e42317033041cbc48fb9708ee94446cf892ed43cb263984d9713ecbc7e2 |
File details
Details for the file pyfairdatatools-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: pyfairdatatools-1.0.2-py3-none-any.whl
- Upload date:
- Size: 72.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/6.2.0-1015-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 978e03772e467ad0342bd81856017d9feaae2856172c03ca488ee670f1705d2d |
|
MD5 | 96a634cca2213e9377da0ece2d85a0eb |
|
BLAKE2b-256 | ace8d5027f15158c49ad0401d56bda2badc4952efe59d05fba0b078a049e8301 |