
CCDS
A standard folder layout and setup tool for data science projects, generated with one command.drivendataorg/cookiecutter-data-science
- Stars
- 10.1k
- Forks
- 2.6k
- Licence
- MIT
- Language
- Python
- Last update
- 1 months ago
- Type
- Dev tool
What it is
Cookiecutter Data Science (CCDS) is a command-line tool that creates a starter folder structure for a data science project. The layout separates raw and processed data, notebooks, models, reports and source code into predictable places. People use it so that projects are easier to organize, share and hand off to others.
- Generate a new project folder with data/raw, data/processed, notebooks, models and reports directories already in place
- Choose project settings during setup and get a matching directory tree
- Use a specific template version with the -c flag, such as a branch, tag or commit
- Create a project with a Makefile, pyproject.toml and a docs folder configured for mkdocs
Great for
- Data scientists starting a new analysis or modeling project who want a consistent layout
- Teams that want shared conventions for where data, notebooks and models live
- Students learning how to organize a data science project
- Anyone who already uses cookiecutter templates and wants a data-science-specific one
Not ideal for
- People who need a web application or production service scaffold, since the README describes a data science project structure only
- Users who want the old v1 template by default, because v2 changed the tool and requires the new ccds command; v1 is still available with a flag
- Anyone who prefers no standard structure, since the template is opinionated about folder names
How to get it
- 1
Install with a package manager
You'll need: Python 3.10+ · pipx (recommended)
Install with pipx (recommended)
pipx install cookiecutter-data-scienceInstall with pip
pip install cookiecutter-data-science - 2
Run it
- Install the package with pipx or pip
- Run ccds in the folder where you want the new project created
- Answer the setup prompts
- Open the generated project folder and look through the directory structure
- 3
Get the most out of it
- Use ccds -c with a branch, tag or commit to pin a specific template version
- Read the project homepage for the philosophy behind the layout
- Follow the naming convention for notebooks described in the README, such as 1.0-initials-description
- Use the generated Makefile commands like make data or make train as a starting point
Downloads
Strengths
- Simple, one-command setup with a clearly documented directory layout
- Install options are clear and it is published on PyPI
- MIT license and an active test suite noted in the README
Trade-offs
- The README describes v2 as a breaking change from v1, so older guides may not match the current tool
- The template is opinionated about folder names and file layout, which some teams may need to adapt
- The README is truncated here, so detail on every generated file and setting is unclear
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| cookiecutter-data-science (this) | 10.1k | Dev tool | beginner | 1 months ago | Data scientists starting a new analysis or modeling project who want a consistent layout |
| hydra | 17.6k | App | intermediate | 4 days ago | Gamers who want one launcher for their game library |
| fg-data-profiling | 13.7k | Library | beginner | 6 days ago | Analysts who want a quick first look at an unfamiliar dataset |
| spaCy | 34k | Library | intermediate | 10 days ago | Python developers building text-processing features into an application |
| awesome-datascience | 30.3k | Curated list | beginner | 5 days ago | Beginners who want a guided set of links to start learning data science |
| machine-learning-for-trading | 21.7k | Learning resource | intermediate | 8 days ago | Readers of the Machine Learning for Trading book who want to run its code |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.