drivendataorg/cookiecutter-data-science

A logical, reasonably standardized, but flexible project structure for doing and sharing data science work.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 22 minutes ago
Added to GitGenius on September 6th, 2026
Created on October 30th, 2015
Open Issues & Pull Requests: 34 (+0)
GitHub issues: Enabled
Number of forks: 2,633
Total Stargazers: 10,043 (+0)
Total Subscribers: 115 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 16.5 hours
Mean response time: 152.4 days
90th percentile: 699.7 days
Tracked items: 38

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 18
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,119 days
Stale 30+ days: 18
Stale 90+ days: 18

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (2)
  • docs (2)
  • enhancement (2)
  • gg-easy (1)
  • needs-discussion (1)
  • v2-bug (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Cookiecutter Data Science is a project template tool that scaffolds a standardized directory structure for data science work.

The tool solves the problem of inconsistent project organization across data science teams and individuals by providing a logical, reasonably standardized but flexible structure that incorporates best practices. It works by extending the cookiecutter templating utility with a dedicated Python package and command-line interface that generates a new project with predefined directories and conventions for data, notebooks, source code, models, and reports.

Teams and individuals working on data science projects should choose this tool if they value consistency across projects and want to follow established organizational patterns without sacrificing flexibility. It suits projects of any scale where reproducibility and collaboration matter. The tool is particularly useful for teams that want a shared baseline structure while allowing customization through template options during project initialization.

The project maintains an active development process with regular updates to the template and tooling. The tool has evolved significantly between major versions, with version two introducing a dedicated Python package and command-line program rather than relying solely on the base cookiecutter utility. The project accepts community contributions through a documented contribution process. The tool supports using different versions of the project template independently from the installed package version, allowing users to opt into unreleased changes or maintain compatibility with older templates as needed.