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. Finally, Snakemake workflows can entail a description of required software, which will be automatically deployed to any execution environment.
Snakemake is highly popular, with >7 new citations per week. For an introduction, please visit https://snakemake.github.io.
- 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 Twitter.
- To learn Snakemake, please do the
tutorial
, and see theFAQ <project_info-faq>
. - Best practices for writing Snakemake workflows can be found
here <snakefiles-best_practices>
. - For more advanced usage on various platforms, see the
executor_tutorial
.
- For releases, see
Changelog <changelog>
. - Check
frequently asked questions (FAQ) <project_info-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 <project_info-contributing>
.
When using Snakemake, please cite our "rolling" paper
This paper will also be regularly updated when Snakemake receives new features. See Citations <project_info/citations>
for more information.
- Snakemake Wrappers Repository
The Snakemake Wrapper Repository is a collection of reusable wrappers that allow to quickly use popular tools from Snakemake rules and workflows.
- Snakemake Workflow Catalog
An automatically scraped catalog of publicly available Snakemake workflows for any kind of data analysis.
- Snakemake Workflows Project
This project provides a collection of high quality modularized and re-usable 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.
- Snakemake Profiles Project
This project provides Snakemake configuration profiles for various execution environments. Please consider contributing your own if it is still missing.
- Snakemake API documentation
The documentation of the Snakemake API for programmatic access and developement on Snakemake.
- Conda-Forge
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
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.
getting_started/installation tutorial/tutorial tutorial/short executor_tutorial/tutorial snakefiles/best_practices
executing/cli executing/cluster executing/cloud executing/grouping executing/caching executing/interoperability executing/monitoring
snakefiles/writing_snakefiles snakefiles/rules snakefiles/configuration snakefiles/modularization snakefiles/remote_files snakefiles/utils snakefiles/deployment snakefiles/reporting snakefiles/testing snakefiles/foreign_wms
project_info/citations project_info/more_resources project_info/faq project_info/contributing project_info/authors project_info/history project_info/license