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.