Prompt arguments¶
When running the command ccp a prompt will start which enables you to configure your repository. The
prompt values and their explanation are as follows:
author
Your full name.
Your email address.
author_github_handle
Your github handle, i.e. <handle> in https://github.com/<handle>
project_name
Your project name. Should be equal to the name of your repository
and it should only contain alphanumeric characters and -'s.
project_slug
The project slug, will default to the project_name with all -'s
replaced with _. This will be how you import your code later, e.g.
from <project_slug> import foo
project_description
A short description of your project.
layout
"flat" or "src", defaults to "flat".
"flat": Places the Python module in the root directory."src": Organizes the project by placing the Python module inside asrcdirectory.
include_github_actions
"y" or "n". Adds a .github directory with various actions and
workflows to setup the environment and run code formatting checks
and unittests.
publish_to_pypi
"y" or "n". Adds functionality to the
justfile and Github workflows to make publishing your code as
simple as creating a new release release on Github. For more info,
see
Publishing to PyPI.
deptry
"y" or "n". Adds deptry
to the development dependencies of the project, and adds it to the just check command. deptry is a command line tool to check for issues with dependencies in a Python project, such as obsolete or missing dependencies.
mkdocs
"y" or "n". Adds MkDocs
documentation to your project. This includes automatically parsing
your docstrings and adding them to the documentation. Documentation
will be deployed to the gh-pages branch.
codecov
"y" or "n". Adds code coverage checks with codecov.
dockerfile
"y" or "n". Adds a simple Dockerfile.
devcontainer
"y" or "n". Adds a devcontainer specification to the project along with pre-installed prek hooks and VSCode python extension configuration.
python_version
Select the Python version for your project from uv-managed Python installations. Options: ["3.13", "3.12", "3.11", "3.10", "3.14"]
The template will verify that the selected version is installed via uv. If not, you'll be prompted to install it with uv python install <version>.
open_source_license
Choose a license. Options:
["1. MIT License", "2. BSD license", "3. ISC license", "4. Apache Software License 2.0", "5. GNU General Public License v3", "6. Not open source"]
automate_github_setup
"y" or "n", defaults to "n". Automates GitHub repository creation and initial setup after project generation. When enabled:
- Creates a GitHub repository using the GitHub CLI (
gh) - Initializes local git repository
- Runs
just installto set up the development environment - Makes the initial commit (handling prek hooks automatically)
- Adds the GitHub remote
- Pushes the initial commit to GitHub
Requirements: GitHub CLI (gh) must be installed and authenticated.
git_remote_protocol
"ssh" or "https", defaults to "ssh". Specifies the protocol to use for the GitHub remote URL. Only applies when automate_github_setup is "y".
"ssh": Uses SSH protocol (e.g.,git@github.com:user/repo.git) - requires SSH key setup"https": Uses HTTPS protocol (e.g.,https://github.com/user/repo.git) - uses credential helper
dry_run_github_setup
"y" or "n", defaults to "n". When enabled, shows all commands that would be executed during automated GitHub setup without actually running them. Only applies when automate_github_setup is "y".
Useful for: - Understanding what the automation will do before committing - Verifying the setup commands for your specific configuration - Learning the manual setup process