diff --git a/technical-documentation.md b/technical-documentation.md index d270269..07d9438 100644 --- a/technical-documentation.md +++ b/technical-documentation.md @@ -1,3 +1,31 @@ # Technical documentation -Coming... \ No newline at end of file +## Dependencies +There are certain dependencies for konova: +* Postgresql and initial setup + * An instance of a postgresql server must be reachable + * The database defined in `django_settings.py` must exist (default 'konova') + * All django migrations need to be migrated into the database (`python manage.py migrate`) + * The initial setup command needs to be run once after successful migration (`python manage.py setup`) +* Virtualenv + * Konova is a python project, therefore a virtual environment has to be created (>=python3.7) and used for the project + * This becomes obsolet in case of docker container based deployment +* PIP + * All python dependency requirements need to be fullfiled (`pip install -r requirements.txt`) + * Run command in virtualenv (or docker container)! +* Redis and celery + * An instance of a redis server must be reachable + * The configuration for a broker defined in `celery.py` needs to point to redis + * Background processes need to be started (`celery -A konova worker -l INFO`) + * More info [here](https://docs.celeryq.dev/en/stable/userguide/workers.html#starting-the-worker) + * Keep in mind that each background process is an instance of konova itself! +* Codelists + * All codes that are used in konova (registration offices, biotope types, ...) are fetched from the rlp own public list of osiris keys (e.g. https://codelisten.naturschutz.rlp.de/repository/referenzliste/903) + * Codes can be fetched using the custom command found in app `codelist` in konova (`python manage.py update_codelist`) + * This should be run once a night, e.g. using cron as scheduler + +## API +All details regarding the API can be found [here](https://git.naturschutz.rlp.de/SGD-Nord/konova/wiki/api_de). + + +