Skip to content

Prompts

When creating your project from this template, CookieCutter will ask you a series of questions. All answers can be changed afterward, but package_name in particular occurs in multiple places (including directory names), so choose it carefully upfront.

Personal information

project_author
Your full name. Used in documentation and project metadata.

email
Your e-mail address. Used for metadata and pyproject.toml.

github_username
Your GitHub username. Used to generate repository links.

Project naming

project_name
A concise, human-readable project name (may include spaces and capitals, e.g. "My New Project").

project_slug (auto-derived)
URL-friendly version of project_name — spaces replaced by dashes, lowercased. Becomes the repository name and top-level directory.

package_name (auto-derived)
Python import name derived from project_slug — dashes replaced by underscores. Used in import statements, so it must be a valid Python identifier.

Project setup

is_research_project (default: true)
When true, the project includes directories for data science workflows: data/, notebooks/, reports/, scripts/, references/. Set to false for a plain Python package without those extras.

project_description
A one-line description of your project. Used in pyproject.toml, README, and docs.

project_version (default: 0.1.0)
Initial version following Semantic Versioning: MAJOR.MINOR.PATCH.

Tool choices

command_line_interface
Scaffolds a CLI module in your package using the selected framework:

Choice Description
Typer Modern, type-hint-based CLI
Click Decorator-based, widely used
Docopt Docstring-driven argument parsing
None No CLI module generated

project_license
The license to include. Choices: MIT, BSD, ISC, Apache 2.0, GPL v3, Not open source.

docs_engine
Documentation toolchain to set up:

Choice Description
Sphinx Classic Python docs with MyST Markdown
Zensical MkDocs Material-based, modern look
MyST Lightweight Markdown-first Sphinx variant