Cookiecutter Data Snake
March 28, 2026 ยท View on GitHub
Cookiecutter Data Snake
A reproducible data science template using a bunch of snakes :snake:, i.e., Python, snakemake, pixi (a project-centric conda/mamba package manager), and more.

This cookiecutter is based on cookiecutter-data-science, with the following main differences:
- snakemake to orchestrate the data analysis workflow instead of GNU Make (recommended in
cookiecutter-data-science). The advantages of snakemake are its more Pythonic syntax as well as the availability of a dedicated code formatter, i.e., snakefmt (see pre-commit item below). - pixi as the project and package manager for reproducible environments and task execution.
- pre-commit to manage multi-language pre-commit hooks, including: ruff to format and lint Python files (
.py) and Jupyter Notebooks (.ipynb), nbstripout to manage notebook outputs, and snakefmt to format Snakefiles and more.
Requirements to use the cookiecutter template:
- Python 3.8+
- cookiecutter, which can be installed with
pip(see the official installation instructions). - pixi, which manages the generated project's environment and tooling.
To start a new project, run:
$ cookiecutter gh:martibosch/cookiecutter-data-snake
fill the required parameters and then follow the instructions in the generated README.md file.
Acknowledgments
- Project based on Henk Griffioen's version of the cookiecutter data science project template. #cookiecutterdatascience