HyperEx (Hypervariable region Extractor) is a high-performance tool for precise extraction of 16S rRNA hypervariable regions using primer-based approaches. Built in Rust for speed and reliability.
- 🧬 Built-in universal 16S primer sequences
- 🔍 Supports IUPAC ambiguity codes in primers
- ⚡ Multi-threaded processing for large datasets
- 📁 Handles compressed inputs (gzip, xz, bzip2)
- 📊 Generates both FASTA and GFF3 outputs
- 🎯 Configurable mismatch tolerance
cargo install hyperexDownload from our Releases Page
git clone https://github.com/Ebedthan/hyperex.git
cd hyperex
cargo install --path .hyperex input.fastahyperex --region v3v4 --region v4v5 input.fastahyperex -f CCTACGGGNGGCWGCAG -r GGACTACHVGGGTWTCTAAT input.fastahyperex --region v1v2 --mismatch 2 input.fasta| Option | Description |
|---|---|
| -f, --forward-primer | Forward primer sequence (IUPAC supported) |
| -r, --reverse-primer | Reverse primer sequence (IUPAC supported) |
| --region | Predefined region (v1v2, v3v4, etc.) or primer file |
| -m, --mismatch | Allowed mismatches (default: 0) |
| -p, --prefix | Output file prefix (default: hyperex_out) |
| --force | Overwrite existing files |
| -q, --quiet | Reduce verbosity |
Create a CSV file with primer pairs:
FORWARD_1,REVERSE_1
FORWARD_2,REVERSE_2
...
Multiple regions from compressed input:
xzcat big_file.fa.xz | hyperex --region v1v2 --region v3v4 -p resultsCustom primers with 1 mismatch:
hyperex -f ATCG -r GGCC -m 1 input.fasta- Rust 1.60+ (for source builds)
- Compression libraries (optional for compressed inputs):
- libz (gzip)
- liblzma (xz)
- libbz2 (bzip2)
Found an issue? File it on our Issue Tracker.
