This repository serves only as a Python template for new projects.
- Create a new repository and select
imjoy-team/imjoy-python-template
as template repository. - Clone your new repository.
- Search and replace all occurrences of
NEW_PACKAGE
. ReplaceNEW_PACKAGE
with the name of the new repository. - Add package requirements in
install_requires
insetup.py
and inrequirements.txt
as needed. - Update this
README.md
with a description and instructions for your new repository.
-
Install and set up development environment.
pip install -r requirements_dev.txt
This will install all requirements. It will also install this package in development mode, so that code changes are applied immediately without reinstall necessary.
-
Here's a list of development tools we use.
-
It's recommended to use the corresponding code formatter and linters also in your code editor to get instant feedback. A popular editor that can do this is
vscode
. -
Run all tests, check formatting and linting.
tox
-
Run a single tox environment.
tox -e lint
-
Reinstall all tox environments.
tox -r
-
Run pytest and all tests.
pytest
-
Run pytest and calculate coverage for the package.
pytest --cov-report term-missing --cov=NEW_PACKAGE
-
Continuous integration is by default supported via GitHub actions. GitHub actions is free for public repositories and comes with 2000 free Ubuntu build minutes per month for private repositories.