| Votes | By | Price | Discipline | Year Launched |
| Snakemake | FREE, OPEN SOURCE | Interdisciplinary |
Snakemake is a Python-based workflow manager that defines analyses as rules connecting input files to output files, then works out the dependency graph and executes it — in parallel, on a cluster or in the cloud, re-running only what is out of date. It is the main alternative to Nextflow, and the natural choice for Python-centric groups.
What it does
Rules are written in a Python-extended syntax, so ordinary Python is available wherever logic is needed rather than confined to a separate scripting layer. Conda and container integration pin the software environment per rule, and the same workflow runs locally, on SLURM or in the cloud by changing execution configuration rather than the workflow.
Strengths
- Free and open source, with an approachable syntax for Python users.
- Re-runs only what changed, which saves substantial time.
- Per-rule Conda and container environments for reproducibility.
- Portable across laptop, cluster and cloud.
- Generates provenance reports and workflow diagrams.
Limitations
The file-driven model becomes awkward when a step’s outputs cannot be named in advance, and debugging a large workflow is harder than debugging a script. Cluster configuration is often the real work. It is overkill for one-off analyses. Nextflow has deeper adoption in genomics, largely because of nf-core.
