cpa
is a cli tool for ultra fast setup of new Python & Rust projects. It automates the creation of config files like style & lint checks, gitignore, Dockerfile, dependency mangement, etc. An opinionated set of pre-commit hooks + Github Actions CI are included for enforcing best practices & reducing dev time.
Example outputs are provided in ./example
Install via script below or get from Releases
curl -sSL https://raw.githubusercontent.com/ysawa0/create-python-app/main/install.sh | bash
# cpa will be installed to ~/bin/cpa
# The installer will add ~/bin to your PATH
Download latest binary from Releases
cargo install --path .
To create a new project:
cpa create --name myproject
Optional params:
--preset
: Specifies a preset for the project. Defaults to "python3.10". "pythonx.yz" and "rust" are supported.
Example:
cpa create --name myproject --preset python3.10
cpa create --name myproject --preset rust
Update current working directory with CPA preset.
cpa update --name myproject --preset python3.10
cpa update --name myproject --preset rust
- Speed up Project Creation: Reduce the time spent on repetitive setup tasks
- Best Practices: Encourage best practices for code quality, formatting, and style by including configs for tools like
black
,isort
, andflake8
. - Automation: Automate tasks such as generating
.gitignore
files, setting up pre-commit hooks, Github Action CI, configuring linters & formatters. - Supports Rust and Python.
- Golang support planned
Users are welcome to contribute to the project by submitting pull requests or opening issues for bugs and feature requests. Feedback is also greatly appreciated to help improve the tool.