Authors: Jason Stajich, Jon Palmer and Cheng-Hung Tsai
AAFTF automates draft genome assembly from Illumina short reads (optionally with long reads), with
read trimming and contaminant filtering, assembly, vector and contaminant screening of contigs,
duplicate removal, contig sorting and renaming, and summary statistics including telomere detection.
Each step is a subcommand that can be run on its own, or all together with AAFTF pipeline_short (Illumina), pipeline_long (ONT/PacBio) or pipeline_hybrid.
Documentation: aaftf.readthedocs.io
With conda (bioconda) or pixi, from a checkout of this repository:
$ conda env create -f environment.yml && conda activate aaftf # what the pipelines need
$ pixi install -e complete && pixi shell -e complete # or every optional tool too
$ AAFTF dependency # check which tools are found
Docker and Singularity images, the pixi environments and the list of external tools are described in Installation.
Then download the reference databases once (into ~/.cache/aaftf, or the folder(s) in $AAFTF_DB):
$ AAFTF database required # what the default pipelines need
$ AAFTF database taxpurge # sourmash databases for taxpurge (pipelines with -p)
# Illumina reads
AAFTF pipeline_short -1 STRAINX_R1.fq.gz -2 STRAINX_R2.fq.gz -o STRAINX -p Ascomycota -c 16 -m 64
# long reads only
AAFTF pipeline_long -lr STRAINX_ont.fq.gz -o STRAINX --genome_size 40m -c 16
# Illumina + long reads
AAFTF pipeline_hybrid -1 STRAINX_R1.fq.gz -2 STRAINX_R2.fq.gz -lr STRAINX_ont.fq.gz -o STRAINX -c 16 -m 64
Each writes STRAINX.final.fasta and prints the assembly statistics. -p/--phylum is optional:
without it the taxonomic screen (taxpurge) is skipped. Steps whose output already exists are skipped,
so an interrupted run can simply be restarted. See
Workflow for each pipeline's steps and files,
and for running the steps one by one.
AAFTF -h lists the subcommands; AAFTF <command> -h shows its options. Each is documented in
Commands.
| Group | Subcommands |
|---|---|
| Setup | dependency, database |
| Steps | trim, mito, filter, assemble, vecscreen, taxpurge, fcs_screen, covpurge, rmdup, polish, sort, assess, depth |
| Pipeline | pipeline_short, pipeline_long, pipeline_hybrid |
| Utilities | fcs_gx_purge, fix_tbl |
This is partially a Python rewrite of JAAWS, a Unix shell based cleanup and assembly tool written by Jon. Changes between versions are listed in CHANGELOG.md.
- Jason Stajich @hyphaltip - http://lab.stajich.org, @hyphaltip.bsky
- Jon Palmer @nextgenusfs - @jonpalmer.bsky
- Cheng-Hung Tsai @chtsai0105 - https://chtsai0105.github.io
Tsai C-H, Palmer JM and Stajich JE. (2026). Automatic Assembly For The Fungi (AAFTF) (v0.8.0-beta.0). Zenodo. doi: 10.5281/zenodo.1620526