Skip to main content

Earth Hologenome Initiative Toolkit

Project description

EHItk logo

CI Python

EHItk

The Earth Hologenome Initiative ToolKit (EHItk) is a Python package and command-line tool for finding, summarizing, exporting, and downloading EHI specimens, hologenomes, and metagenome-assembled genomes.

Installation

pip install ehitk

Example

ehitk specimens query --host-species "Podarcis muralis" --limit 5
ehitk hologenomes query --biome ENVO:01000175 --limit 5
ehitk hologenomes fields
ehitk hologenomes values --field country --limit 10
ehitk mags stats --quality high --species "Escherichia coli"
ehitk mags query --quality high --csv | head
ehitk specimens values --field sex --csv --output-file specimen-sex-values.csv

Python API:

import ehitk

with ehitk.Database() as ehidb:
    mags = ehidb.mags.query(quality="high", host_taxid=40674, limit=5)

for mag in mags:
    print(mag.mag_id, mag.quality, mag.host_species)

Documentation

Full installation instructions, command reference, examples, output formats, and download guidance, and Python API examples are available at:

https://ehitk.readthedocs.io/

Use the built-in help for local command details:

ehitk --help
ehitk specimens --help
ehitk hologenomes fetch --help
ehitk mags query --help

Bundled database and versioning

EHItk ships with a bundled SQLite EHI database, which is the default database used by the command-line interface and Python API. Updating the Python package may therefore also update the default EHI database.

Database updates are paired with documented EHI data releases. Older legacy database files are archived with those data releases so analyses can be rerun against the same database version by passing the file with --db or by opening it with ehitk.Database("/path/to/ehitk.sqlite").

EHItk package versions follow Semantic Versioning for the software interface. Database updates that change the SQLite schema, remove or rename fields, or otherwise alter command-line or Python API output compatibility are treated as breaking changes and require a major version bump. Non-breaking database additions or metadata corrections are released as minor or patch versions and are documented in the changelog and associated data release notes.

Testing and continuous integration

EHItk includes a pytest-based unit test suite in the tests/ directory. The repository also uses GitHub Actions continuous integration to run the test suite, build source and wheel distributions, and perform CLI smoke tests across Python 3.10, 3.11, 3.12, 3.13, and 3.14.

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

ehitk-1.1.2.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

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

ehitk-1.1.2-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file ehitk-1.1.2.tar.gz.

File metadata

  • Download URL: ehitk-1.1.2.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ehitk-1.1.2.tar.gz
Algorithm Hash digest
SHA256 8ca0766fd69b112f2dae5d4dec75708d4748df69b34577e84cebd3fd47ab169f
MD5 78c3a32aeee404b93ef20ef230ad8e9a
BLAKE2b-256 7aae09c0cd3d818665b754c480e0b72db0e99ffa23414ed09906f8138a308ffc

See more details on using hashes here.

Provenance

The following attestation bundles were made for ehitk-1.1.2.tar.gz:

Publisher: release.yml on earthhologenome/ehitk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ehitk-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: ehitk-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ehitk-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e0330c22c784e7efffcc70d7292949bb8517556feccf0a68b68f12a59fe035b4
MD5 4201d3d8e5974aa1bce6f72d23523d8e
BLAKE2b-256 31a956470b492ad7ebcb3d53560b6e0339e88774c539df025675b1013928f0f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for ehitk-1.1.2-py3-none-any.whl:

Publisher: release.yml on earthhologenome/ehitk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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