Save time and stay consistent
Cookiecutter is an open source library for building coding project templates
Why use Cookiecutter?
For Developers
Start new projects quickly the "right way" without rebuilding the plumbing every time
For Organizations
Scale company best practices and save developer time with repeatable templates your whole team can use
For Beginners
Use Cookiecutter to start learning new programming languages or frameworks quickly
Frequently Asked Questions
How do I set up and install Cookiecutter?
Cookiecutter is super easy to install and use. You’ll need Python 3 and can follow the instructions here.
Do I need to be using a specific language or framework?
No, Cookiecutter is agnostic to your tooling - build templates for anything from Python libraries to Go microservices.
What are project templates?
A Cookiecutter project template is a repository you define that you or anyone with access can use to start a coding project. When you create a template repository and files, you indicate which fields are templated within folder names, file names, and file contents. When somebody uses your cookiecutter template, they’ll be prompted to provide all the templated inputs. These inputs are put into a JSON file that the templating engine uses to generate your project. Check out the example here to learn more.
Can I wrap a UI around Cookiecutter?
Whilst Cookiecutter simplifies project generation, there are still several manual steps involved:
- Cloning the template repo.
- Filling out the template variables using a CLI. (For templates that have tons of options, this can get cumberstone). There is also no way to undo / verify your inputs.
- Publishing the newly created repo to your Git provider.
- Cleanup of the template after service service creation.
If you are looking for a clean way to manage your Cookiecutter templates and track their versions through a UI, check out Cortex.