Cookiecutter Data Science
_A logical, reasonably standardized but flexible project structure for doing and sharing data science work._ **Cookiecutter Data Science (CCDS)** is a tool for setting up a data science project template that incorporates best practices. To learn more about CCDS's philosophy, visit the project homepa...
| Entity Passport | |
| Registry ID | gh-tool--drivendataorg--cookiecutter-data-science |
| Provider | github |
Cite this tool
Academic & Research Attribution
@misc{gh_tool__drivendataorg__cookiecutter_data_science,
author = {drivendataorg},
title = {Cookiecutter Data Science Tool},
year = {2026},
howpublished = {\url{https://github.com/drivendataorg/cookiecutter-data-science}},
note = {Accessed via Free2AITools Knowledge Fortress}
} π¬Technical Deep Dive
Full Specifications [+]βΎ
β‘ Quick Commands
git clone https://github.com/drivendataorg/cookiecutter-data-science pip install cookiecutter-data-science π¬ Why this score?
The Nexus Index for Cookiecutter Data Science aggregates Popularity (P:0), Velocity (V:0), and Credibility (C:0). The Utility score (U:0) represents deployment readiness, context efficiency, and structural reliability within the Nexus ecosystem.
π Source Links (Click to verify)
π Specs
- Language
- Python
- License
- Open Source
- Version
- 1.0.0
Usage documentation not yet indexed for this tool.
π View Source Code βTechnical Documentation
Cookiecutter Data Science
A logical, reasonably standardized but flexible project structure for doing and sharing data science work.
Cookiecutter Data Science (CCDS) is a tool for setting up a data science project template that incorporates best practices. To learn more about CCDS's philosophy, visit the project homepage.
βΉοΈ Cookiecutter Data Science v2 has changed from v1. It now requires installing the new cookiecutter-data-science Python package, which extends the functionality of the cookiecutter templating utility. Use the provided
ccdscommand-line program instead ofcookiecutter.
Installation
Cookiecutter Data Science v2 requires Python 3.9+. Since this is a cross-project utility application, we recommend installing it with pipx. Installation command options:
# With pipx from PyPI (recommended)
pipx install cookiecutter-data-science
With pip from PyPI
pip install cookiecutter-data-science
With conda from conda-forge (coming soon)
conda install cookiecutter-data-science -c conda-forge
Starting a new project
To start a new project, run:
ccds
The resulting directory structure
The directory structure of your new project will look something like this (depending on the settings that you choose):
βββ LICENSE <- Open-source license if one is chosen
βββ Makefile <- Makefile with convenience commands like `make data` or `make train`
βββ README.md <- The top-level README for developers using this project.
βββ data
β βββ external <- Data from third party sources.
β βββ interim <- Intermediate data that has been transformed.
β βββ processed <- The final, canonical data sets for modeling.
β βββ raw <- The original, immutable data dump.
β
βββ docs <- A default mkdocs project; see www.mkdocs.org for details
β
βββ models <- Trained and serialized models, model predictions, or model summaries
β
βββ notebooks <- Jupyter notebooks. Naming convention is a number (for ordering),
β the creator's initials, and a short `-` delimited description, e.g.
β `1.0-jqp-initial-data-exploration`.
β
βββ pyproject.toml <- Project configuration file with package metadata for
β {{ cookiecutter.module_name }} and configuration for tools like black
β
βββ references <- Data dictionaries, manuals, and all other explanatory materials.
β
βββ reports <- Generated analysis as HTML, PDF, LaTeX, etc.
β βββ figures <- Generated graphics and figures to be used in reporting
β
βββ requirements.txt <- The requirements file for reproducing the analysis environment, e.g.
β generated with `pip freeze > requirements.txt`
β
βββ setup.cfg <- Configuration file for flake8
β
βββ {{ cookiecutter.module_name }} <- Source code for use in this project.
β
βββ __init__.py <- Makes {{ cookiecutter.module_name }} a Python module
β
βββ config.py <- Store useful variables and configuration
β
βββ dataset.py <- Scripts to download or generate data
β
βββ features.py <- Code to create features for modeling
β
βββ modeling
β βββ __init__.py
β βββ predict.py <- Code to run model inference with trained models
β βββ train.py <- Code to train models
β
βββ plots.py <- Code to create visualizations
Using unreleased changes
By default, ccds will use the project template version that corresponds to the installed ccds package version (e.g., if you have installed ccds v2.0.1, you'll use the v2.0.1 version of the project template by default). To use a specific version of the project template, use the -c/--checkout flag to provide the branch (or tag or commit hash) of the version you'd like to use. For example to use the project template from the master branch:
ccds -c master
Using v1
If you want to use the old v1 project template, you need to have either the cookiecutter-data-science package or cookiecutter package installed. Then, use either command-line program with the -c v1 option:
ccds https://github.com/drivendataorg/cookiecutter-data-science -c v1
# or equivalently
cookiecutter https://github.com/drivendataorg/cookiecutter-data-science -c v1
Contributing
We welcome contributions! See the docs for guidelines.
Installing development requirements
pip install -r dev-requirements.txt
Running the tests
pytest tests
Social Proof
AI Summary: Based on GitHub metadata. Not a recommendation.
π‘οΈ Tool Transparency Report
Verified data manifest for traceability and transparency.
π Identity & Source
- id
- gh-tool--drivendataorg--cookiecutter-data-science
- source
- github
- author
- drivendataorg
- tags
- aicookiecuttercookiecutter-data-sciencecookiecutter-templatedata-sciencemachine-learningpython
βοΈ Technical Specs
- architecture
- null
- params billions
- null
- context length
- null
- pipeline tag
- other
π Engagement & Metrics
- likes
- 0
- downloads
- 0
- github stars
- 9,655
Free2AITools Constitutional Data Pipeline: Curated disclosure mode active. (V15.x Standard)