Skip to main content

Naturalis Biodiversity Informatics ToolKit

Project description

nbitk: Naturalis Biodiversity Informatics ToolKit

This project is intended as a foundational toolkit for biodiversity data research at Naturalis Biodiversity Center. The toolkit is written in Python and is designed to be easy to use and easy to extend.

Who is this for?

The principal users and developers of this toolkit are the bioinformaticians at Naturalis Biodiversity Center. In addition, developers and data engineers of Naturalis's BioCloud use some of the functionality to enact service calls for data validation. Lastly, researchers may find this toolkit useful for operating on biodiversity data, access remote services, and run command line tools via wrappers. Design changes and feature requests should therefore be discussed with the bioinformatics team.

Installation from PyPI

The toolkit and its python dependencies can be installed from PyPI. This results in a lightweight installation that has only the python stack but not any command line tools. This is typically what you need when running service clients. The install is as follows:

pip install nbitk

Installation from BioConda

In addition, there is a release on BioConda, that additionally includes any command line tools for which the toolkit contains wrappers. That release can also be installed directly, resulting in both the core python toolkit as well as command line tools (i.e. you do NOT have to do both pip and conda, just one or the other depending on whether you need to run command line tools, for which you would use the conda release). This is installed as follows:

conda install nbitk

NOTE: the environment.yml is here for the unit testing pipeline so that tool wrappers can be tested as well. Its only other use is to help prepare an updated release on BioConda. Otherwise there is no end-user function for it.

Preparing releases

PyPI

To release on PyPI, all that needs to happen is to tag a version, and then the release is pushed out automatically. Things to keep in mind:

  • Ensure that the release is of sufficient quality (coding style, comments, pydoc, all tests pass)
  • Use semantic versioning to tag the release

BioConda

To release on BioConda, an overview of the steps involved is as follows:

Note that this is typically not needed as BioConda automatically picks up new releases on PyPI.

  1. Fork the BioConda recipes repo
  2. Update the recipes/nbitk/meta.yml in your fork, specifically:
    • Update the version number
    • Update the run requirements to include everything from the pyproject.toml and environment.yml
    • Update the SHA256 hash to match that version. The easiest way to obtain this is to go to https://pypi.org/project/nbitk/#files and click on 'view details' for the release.
  3. Post a pull request to BioConda, with 'Update nbitk' in the title
  4. Address any problems detected by BioConda's CI tools
  5. If all is fine, tag the PR thread for review by a human, and wait
  6. Once a human shows up, address their feedback (be nice: they're volunteers!)
  7. When the human is happy, they will merge the update into BioConda

Usage

The toolkit is meant for programmatic use. It is not intended to be used as a command line tool. Consult the various modules and classes for documentation on how to use the toolkit. In addition, the scripts in the tests directory provide examples of how to use the toolkit.

License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Project details


Download files

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

Source Distribution

nbitk-0.7.3.tar.gz (22.9 MB view details)

Uploaded Source

Built Distribution

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

nbitk-0.7.3-py3-none-any.whl (23.4 MB view details)

Uploaded Python 3

File details

Details for the file nbitk-0.7.3.tar.gz.

File metadata

  • Download URL: nbitk-0.7.3.tar.gz
  • Upload date:
  • Size: 22.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for nbitk-0.7.3.tar.gz
Algorithm Hash digest
SHA256 652cc924c788e774f35b9e0cc229672d6626db2ba0e7ab061d42bbba2dbe21ef
MD5 9f6643c49d96ece9c97acaca2df59255
BLAKE2b-256 bd23f3062221421c9414b4d173511f00c03c8df61317c96f05fd8e7ada7a77c9

See more details on using hashes here.

File details

Details for the file nbitk-0.7.3-py3-none-any.whl.

File metadata

  • Download URL: nbitk-0.7.3-py3-none-any.whl
  • Upload date:
  • Size: 23.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for nbitk-0.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 11a70643f8efe72a3b752a9fc8e46508be67f1fffdafa3ecf121f4b43a76f9da
MD5 2c2749a88939380b08969d6703b1888d
BLAKE2b-256 df37f5547794bc7b3f579a4391adc586794ffaf29c0637bafe4a932d7f0d31d8

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 Pingdom Monitoring Sentry Error logging StatusPage Status page