Repository of useful Python developer tools with examples and configs
This project uses pipenv to manage python package requirements. This means that all development should be done
within the virtual environment. The following command will initialise the virtual environment and install the
dependencies, which can be managed in the Pipfile.
pipenv install --devWe use the --dev flag to hierarchically install the development and production environments. This means,
if you have development requirements such as pytest these will be installed, if you just run pipenv install
you development requirements will not.
To activate your virtual environment, run:
pipenv shellTo add a new requirement to your virtual environment 'template', add a new line to the Pipfile with a pinned version. Alternatively, run the following for a production requirement:
pipenv install my-libraryOr for a development requirement:
pipenv install --dev my-dev-libraryIf you want to find the location of your virtual environment, eg. for setting up your IDE run the following from within the shell.
pipenv --venvThis project uses the black auto formatter which can be run on git commit if you install pre-commit.
Black formats the code committed to a pre-defined standard which can be customised to your needs if required.
See the docs for the defined code style.
Pre-commit is also configured to run flake8 on commit which will pick up linting errors. See the docs.
To install pre-commit run the following from within your virtual environment.
pre-commit installBlack and flake8 should now run on commit. If there are formatting errors the commit will fail and you will need to re-commit the changes made by black.