Cookiecutter template for Python projects. CapedHero flavor🍹
-
Automatic setup via one-liner (see section Usage), which:
-
Loads virtualenv, so you can start straight away.
-
Installs Invoke Bash tab-completion.
-
Installs app dependencies with help of pip-tools.
-
Initializes git repository and makes first commit.
-
Installs pre-commit and checks if it works.
-
-
Configured .gitignore.
-
Configured Bandit.
-
Configured Flake8.
-
Configured isort.
-
Configured logging.
-
Configured Black.
-
Ready-to-go CI script.
-
Basic Invoke tasks (including automation of making a release!).
-
Basic project structure (
main.py
,source_code_dir
,requirements
,tests
, etc.). -
README & CHANGELOG skeleton.
# Generate a new project.
> cookiecutter gh:RTBHOUSE/big-bang-py
# Answer all of the prompted questions.
# Brackets show default options. Click <enter> if you wish to accept them.
project_name [My New Project]: ???
project_dir [my-new-project]: ???
project_source_code_dir [src]: ???
# Finish with:
> cd $MY_NEW_PROJECT_DIR
> virtualenv venv \
&& ./invoke_bash_completion \
&& source venv/bin/activate \
&& pip install invoke pip-tools \
&& ./finish_project_setup
And voilà! You are ready to code!
This Cookiecutter is licensed under the terms of the MIT License.