Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

eris 🧬🍏✨

PyPI version Python versions Documentation License

⋆⁺‧₊☽◯☾₊‧⁺⋆ Graph-aware contextual annotation of targeted genomic features. ⋆⁺‧₊☽◯☾₊‧⁺⋆

eris is a bioinformatics pipeline designed to resolve and annotate shattered genomic features (like mobile genetic elements or structural variants) directly from assembly graphs. By employing a dynamic "Anchor-and-Traverse" depth-first search through de Bruijn/string graphs (GFA), eris stitches together split alignments across multiple micro-contigs, seamlessly bridging sequence bubbles and gaps.

Crucially, it utilizes fractional read depth flow to distinguish between dominant wild-type structures and rare sub-clonal insertions, returning detailed evolutionary context including upstream flanks, downstream flanks, and trapped passenger genes.


🚀 Features

  • Graph-Aware Traversal: Overcomes aligner limitations by traversing assembly graph topology to bridge unaligned micro-contigs and resolve shattered targets.
  • Sub-Clonal Resolution: Integrates graph read-depth (dp/rd tags) to calculate fractional copy number, easily distinguishing low-frequency variant bubbles from dominant paths.
  • Contextual Annotation: Sweeps across stitched paths to identify internal passenger genes (e.g., AMR genes trapped inside transposons) and flanking genomic context.
  • High Performance: Built for speed with a hybrid architecture utilizing numpy, numba, and mappy (Minimap2).
  • Standardized Outputs: Generates detailed tabular reports (TSV), locus-specific FASTAs, and standard annotations (pyfgs powered GFF3/FAA).

📦 Installation

eris requires Python 3.11 or later.

Install directly from PyPI:

pip install eris

Dependencies

eris relies on the following core libraries:

  • numpy (>=2.4)
  • numba (>=0.65)
  • mappy (>=2.3)
  • pyfgs (>=0.0.1)
  • biopython (>=1.87)

🛠️ Usage

eris installs a command-line interface eris for immediate use.

eris -i assembly.gfa -d targets.fasta -o results/sample_A

Basic Arguments

  • -i, --genome: Path to a genome in fasta or GFA format (can be compressed). GFA is heavily recommended to utilize topological stitching.
  • -d, --targets: Path to target nucleotide features (fasta or pre-indexed .mmi).
  • -o, --outprefix: Prefix for all generated output files.
  • -f, --feature-type: The type of feature to annotate (default: CDS).
  • --hops: Maximum number of contextual genes to sweep upstream/downstream (default: 3).
  • --tolerance: Distance tolerance in base pairs for merging clustered alignments (default: 0).

Outputs

Depending on the arguments provided, eris will output:

  1. {prefix}_report.tsv: A detailed report of every resolved locus, including targets, context (INSIDE, UPSTREAM, DOWNSTREAM), biological effects, topological hops, and fractional depths.
  2. {prefix}_loci.fasta: The stitched nucleotide sequences for each assembled structural variant.
  3. {prefix}_assembly.gff: GFF3 annotation of the global features.
  4. {prefix}_proteins.faa: Amino acid fasta of the global features.

📚 Documentation

For detailed guides, API reference, and advanced configuration, visit the eris Documentation.

💻 Development

eris uses hatch for build and environment management.

To set up a local development environment (uv needs to be installed):

# Clone the repository
git clone [https://github.com/tomdstanton/eris.git](https://github.com/tomdstanton/eris.git)
cd eris
make dev

Running Tests & Linting

eris enforces rigorous type checking and linting.

# Run tests
pytest

# Run static type checking
mypy

# Run linting and formatting
ruff check
ruff format

📝 License

This project is licensed under the terms of the LICENSE file included in the repository.

🤝 Authors


eris

Release files for pyeris 0.0.1a1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyeris 0.0.1a1
File Size Uploaded
pyeris-0.0.1a1.tar.gz 111.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyeris 0.0.1a1
File Interpreter ABI Platform
pyeris-0.0.1a1-py3-none-any.whl Python 3 none any Details

Total release size: 166.9 kB

Release files / pyeris-0.0.1a1.tar.gz

Download URL pyeris-0.0.1a1.tar.gz
Size 111.4 kB
Tags Source
SHA-256 checksum
How to use checksums
15ed3b2fd410e0ebd558c2072baabe995c0d79dd10286651f2624f2055013148
BLAKE2b-256 checksum
How to use checksums
abb0431f185fb9035e6d6b5a50b5820d58f922136bfb9340596127ba34a6aa5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 24, 2026.

Transparency log

Release files / pyeris-0.0.1a1-py3-none-any.whl

Download URL pyeris-0.0.1a1-py3-none-any.whl
Size 55.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6f3c9b100deb46f6e39c5eb64c2bb9c1096b67c28bf31eaa5cde782893116c51
BLAKE2b-256 checksum
How to use checksums
5057dff45e09c499b91aeccd40abacaaae37a684c88d1c2422572979e2d1b939
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.1a1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page