create-python-app is a cli tool for ultra fast setup of new Python projects. It automates the creation of config files for style & lint checks, gitignore, a basic Dockerfile and Poetry for dependency management. An opinionated set of pre-commit hooks are included for enforcing best practices and reducing dev time.
An example output is provided in ./example
Installation
MacOS, Linux
Install via script below or get it from Releases
1 | curl -sSL https://raw.githubusercontent.com/ysawa0/create-python-app/main/install.sh | bash |
1 | # cpa will be installed to ~/bin/cpa |
Windows
Download latest binary from Releases page
Building from source
1 | # cd to project |
Usage
To create a new project:
1 | cpa create --name myproject |
Optional params:
--preset
: Specifies a Python version for the project. Defaults to “python3.10”
Example:
1 | cpa create --name myproject --preset python3.10 |
Goals
- 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, and configuring code linters and formatters. - Golang, Rust support planned
Contributions and Feedback
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.