No matter what kind of project you plan to do (Django/Flask web app or pure-python CLI tool) the Python project template brings you the best practices in code style, code quality, and automation.
Enjoy the development of your new project 🏖️
- Automated with
make
development environment:- Creating virtualenv
- Installing requirements
- Code-style checking with
isort
andblack
- Linting with
prospector
(mypy
,pylint
,pycodestyle
,Pyflakes
,Mccabe
,Dodgy
,Pydocstyle
,bandit
) - Unit testing
- Coverage checking
- Docker Compose up/down
- Running the app
- Cleaning up workdir
- GitHub Actions workflow
- Dockerfile & docker-compose
- Use the repo as a GitHub template OR:
- Clone the repo.
- Change git origin to your new git repo.
- Run
make
for the help message.
For example make check
will do:
- create virtualenv (if it doesn't created yet)
- install requirements (if it doesn't installed yet)
- install dev requirements (if it doesn't installed yet)
- run
isort --check --diff
- run
black --check --diff
- run
prospector
- run
mypy
- run unit tests
GitHub Actions use the same (make check
) command to check pull requests
- Pre-commit hook