rustyhmmer 0.1.0

Pure-Rust HMMER3 hmmsearch with byte-identical --tblout output
Documentation

rustyhmmer

Pure-Rust reimplementation of HMMER3's hmmsearch, producing byte-identical --tblout output to HMMER 3.4 for protein profile-HMM search.

HMMER is pronounced "hammer"; this is a rusty one.

Status

  • Amino-acid hmmsearch pipeline: MSV/SSV (F1) → bias (F3b) → Viterbi (F2) → Forward (F3) → domain definition → per-sequence / per-domain scoring → --tblout reporting.
  • Output is validated byte-for-byte against C HMMER 3.4 --tblout hit rows.
  • No unsafe, no architecture-specific intrinsics; SIMD is obtained through auto-vectorization, so it runs on both x86-64 (SSE2) and AArch64 (NEON).

Build

cargo build --release

Usage

rustyhmmer-hmmsearch [options] <query.hmm> <target.faa>

The tool reads a HMMER3/f .hmm file and a protein FASTA database and writes --tblout-format tabular results to standard output.

Scope and limitations

  • Protein (amino-acid) models only.
  • hmmsearch only (no hmmscan / nhmmer / phmmer / jackhmmer).
  • Local, multihit mode (HMMER's default).

License

BSD-3-Clause. rustyhmmer is a derivative work of HMMER and its Easel library and is distributed under the same terms. See LICENSE for the full HMMER and Easel copyright notices.

Author

Sunju Kim n.e.coli.1822@gmail.com