# Snakemake

Bioconda PyPI Docker CI status Stack Overflow Twitter Discord GitHub stars Paper

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.

## 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 Twitter.

- To learn Snakemake, please do the Snakemake Tutorial, and see the FAQ.

- Best practices for writing Snakemake workflows can be found here.

- For more advanced usage on various platforms, see the Snakemake Executor Tutorials.

## 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.

## Citation

When using Snakemake, please cite our “rolling” paper

Mölder, F., Jablonski, K.P., Letcher, B., Hall, M.B., Tomkins-Tinch, C.H., Sochat, V., Forster, J., Lee, S., Twardziok, S.O., Kanitz, A., Wilm, A., Holtgrewe, M., Rahmann, S., Nahnsen, S., Köster, J., 2021. Sustainable data analysis with Snakemake. F1000Res 10, 33.

This paper will also be regularly updated when Snakemake receives new features. See Citations for more information.

## Resources

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.