Snakemake | Snakemake 9.3.3.dev2 documentation (original) (raw)
The Snakemake workflow management system is a tool to create reproducible and scalable data analyses. Workflows are described via a human readable, Python based language. They can be seamlessly scaled to server, cluster, grid and cloud environments, without the need to modify the workflow definition. Snakemake workflows can entail a description of required software, which will be automatically deployed to any execution environment. Finally, workflow runs can be automatically turned into interactive portable browser based reports, which can be shared with collaborators via email or the cloud and combine results with all used parameters, code, and software.
Snakemake is highly popular, with >11 new citations per week (old and new paper). It has been mentioned in two Nature technology features (here and here) and has more than 1 million downloads on anaconda.org. For an introduction, please visit https://snakemake.github.io.
Getting started
- To get a first impression, please visit https://snakemake.github.io.
- To properly understand what Snakemake can do for you please read our “rolling” paper.
- News about Snakemake are published via Bluesky and Mastodon.
- To learn Snakemake, please do the Tutorial: General use, and see the FAQ.
- Best practices for writing Snakemake workflows can be found here.
Support
- For releases, see Changelog.
- Check frequently asked questions (FAQ).
- In case of questions, please post on stack overflow.
- To discuss with other Snakemake users, use the discord server. Please do not post questions there. Use stack overflow for questions.
- For bugs and feature requests, please use the issue tracker.
- For contributions, visit Snakemake on Github and read the guidelines.
- Check out our code of conduct and refer to it for requests or concerns in that direction.
Citation
When using Snakemake, please cite our “rolling” paper
This paper will also be regularly updated when Snakemake receives new features. See Citations for more information.
Maintainers
The Snakemake maintainers are:
- Johannes Köster (lead developer)
- David Lähnemann
- Christian Meesters
- Michael B. Hall
- Filipe G. Vieira
- Morten E. Lund
- Michael Jahn
- Cade Mirchandani
Resources
The Snakemake Wrapper Repository is a collection of reusable wrappers that allow to quickly use popular tools from Snakemake rules and workflows.
An automatically scraped catalog of publicly available Snakemake workflows for any kind of data analysis.
This project provides a collection of high quality modularized and reusable workflows. The provided code should also serve as a best-practices of how to build production ready workflows with Snakemake. Everybody is invited to contribute.
This project provides Snakemake configuration profiles for various execution environments. Please consider contributing your own if it is still missing.
The documentation of the Snakemake API for programmatic access and development on Snakemake.
Conda-Forge is a community driven distribution of Conda packages that can be used from Snakemake for creating completely reproducible workflows by defining the used software versions and providing binaries.
Bioconda, a partner project of conda-forge, is a community driven distribution of bioinformatics-related Conda packages that can be used from Snakemake for creating completely reproducible workflows by defining the used software versions and providing binaries.