diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a2ef25bf5a6f..5a5086c414ce 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,6 +8,55 @@ the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue or assessing patches and features. +## Development environment + +Next steps should work on clear Ubuntu 18.04. + +- Install necessary dependencies: + +```sh +$ sudo apt-get install -y curl redis-server python3-dev python3-pip python3-venv libldap2-dev libsasl2-dev +``` + +- Install [Visual Studio Code](https://code.visualstudio.com/docs/setup/linux#_debian-and-ubuntu-based-distributions) for development + +- Install CVAT on your local host: + +```sh +$ git clone https://github.com/opencv/cvat +$ cd cvat && mkdir logs keys +$ python3 -m venv .env +$ . .env/bin/activate +$ pip install -U pip wheel +$ pip install -r cvat/requirements/development.txt +$ python manage.py migrate +$ python manage.py collectstatic +``` + +- Create a super user for CVAT: + +```sh +$ python manage.py createsuperuser +Username (leave blank to use 'django'): *** +Email address: *** +Password: *** +Password (again): *** +``` + +- Run Visual Studio Code from the virtual environment + +``` +$ code . +``` + +- Inside Visual Studio Code install [Debugger for Chrome](https://marketplace.visualstudio.com/items?itemName=msjsdiag.debugger-for-chrome) and [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python) extensions + +- Reload Visual Studio Code + +- Select `CVAT Debugging` configuration and start debugging (F5) + +You have done! Now it is possible to insert breakpoints and debug server and client of the tool. + ## Branching model The project uses [a successful Git branching model](https://nvie.com/posts/a-successful-git-branching-model).