mgnifam
Iterative HMM-based protein family generation over very large sequence databases.
Given a chunk of MMseqs2 clusters and a protein FASTA, mgnifam generate_families builds an
HMM from each cluster, recruits new members from the whole database, re-aligns, and
either converges on a family or discards the cluster. It is the core algorithm of the
mgnifams Nextflow pipeline, extracted into
a standalone, tested package.
Documentation: vagkaratzas.github.io/mgnifam
Install
pip install mgnifam # or: uv tool install mgnifam
Or from bioconda, into its own environment:
conda create -n mgnifam -c conda-forge -c bioconda mgnifam
conda activate mgnifam
Channel order matters — put conda-forge before bioconda, per the
bioconda setup. The package is noarch, and conda
pulls in a Python 3.13 interpreter itself, so it does not have to be the one already on
your PATH. mamba/micromamba work the same way with the same flags.
Requires Python >= 3.13. Verify with mgnifam --version.
To work on the package itself, or to reproduce published results byte-for-byte, install from the repository against the committed lockfile instead — see Reproducibility, which is scoped to that resolved dependency set:
git clone https://github.com/vagkaratzas/mgnifam && cd mgnifam
uv sync --frozen
Quick start
Build families from a chunk of clusters:
mgnifam generate_families \
--clusters_chunk clusters.tsv \
--fasta_file mgnifams_input.fa
Refresh existing families against a new release:
mgnifam update_families \
--hmm_input previous_output/hmm \
--fasta_file new_release.fa
--fasta_file must be an uncompressed FASTA with unique sequence names. Pass every
threshold explicitly on a production run.
The documentation covers the rest:
- Generating families: input formats, sequence naming, every flag, and sharing one SSI index across chunks
- Updating families:
--skip_refine, family identity, and retrying a chunk in place - Outputs: every file, exit status, and the MultiQC summary
- Reproducibility: what is byte-identical, and how outputs differ from the legacy script
- Python API
Development
uv lock --check && uv sync --frozen
uv run pre-commit install
uv run pre-commit run --all-files
uv run pytest
The documentation site lives in docs/; see
Development to build it.
Metadata
Release files for mgnifam 4.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mgnifam-4.0.0.tar.gz | 381.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mgnifam-4.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 419.9 kB
Release files / mgnifam-4.0.0.tar.gz
| Download URL | mgnifam-4.0.0.tar.gz |
|---|---|
| Size | 381.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c49f43a1ebd7b48e7996f9bb4a9a39ce225899cb01b145debbdf5bd3a5daea79
|
|
BLAKE2b-256 checksum How to use checksums |
67defe0813ab366179022d5ac8a00ea85a8b39e38ff6e9e0183a4355707a3703
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 28, 2026.
Transparency logRelease files / mgnifam-4.0.0-py3-none-any.whl
| Download URL | mgnifam-4.0.0-py3-none-any.whl |
|---|---|
| Size | 38.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
460e69c77829dd79970225e15ed5b13ef8de53e899b8ebe4b3198be97526de57
|
|
BLAKE2b-256 checksum How to use checksums |
07e8c7a4c990cf0601884898b43988835a64c697b62349b896ed053ffa400dae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 28, 2026.
Transparency log