(Mainly listed as shortcuts to documentation)
- FastAPI as the base for the backend part.
- Pydantic for conversion of untyped JSON to typed objects. And because FastAPI automatically supports it and gives you useful error messages if you mess up things.
- Vue for frontend, using native module support so no npm build step 🎉
- uvicorn to run the damn thing.
data/train-parts
is scanned for datasetsfilters
should contain filter json (but that's not implemented yet, right now it just has a hard-codedFILTERS
dict in code)
First, get some datasets together, e.g.
mkdir -p data
mtdata get -l ara-eng -tr OPUS-elrc_2922-v1-ara-eng --compress -o data
mtdata get -l fra-eng -tr OPUS-elitr_eca-v1-eng-fra --compress -o data
Then for development:
python3 -m venv .env
bash --init-file .env/bin/activate
pip install -r requirements.txt
./main.py serve --reload
Then go to http://127.0.0.1:8000/ for the "interface" or http://127.0.0.1:8000/docs for the API.