# cjvt-valency Required submodules: * `https://gitea.cjvt.si/kristjan/cjvt-corpusparser.git` ```bash $ git submodule init $ git submodule update ``` ## Components ### Database (2 containers) Set db admin, user, pass, etc in 'Makefile'. Spin up the database service and create users: ```bash # $ make database-clean # opt $ make database-service $ make database-users ``` Populate the database with data form files: * ssj500k.xml * kres.xml * kres_SRL.json Set path to files in `Makefile`. ```bash # spin up a container with python env $ make python-env # install our packages $ make python-env-install # run the code $ make fill-database ``` If all goes well, we should be able to inspect the database, filled with corpora, on `0.0.0.0:8087`. ### Flask backend (1 container) Relies heavily on the database. Set that up first. ```bash $ make python-env # $ make backend-dev # development $ make backend-prod ``` API endpoints: * GET word list (pre-cached) * GET reduced frames (pre-cached) * POST senses * User auth logic ### Vue frontend (1 container) Relies on Flask backend. Before running `make`, you might need to set the correct api address. Check `./src/frontend_vue/config/config_prod.json`. bash ``` # $ make frontend-dev # development $ make frontend-prod ``` App available on: `http://0.0.0.0:8080`.