The project uses:
- FastAPI
- Pydantic v2 for the schema validation
- SQLModel (SQLAlchemy v2) for the ORM
- PostgreSQL (a Docker container)
The database schemas are described in the ums.models
module.
The database can be started with:
./scripts/test_db.sh up
This will spin up a Postgres container with a docker_test_ums_data
volume attached
to it for the DB data. It can then be initialised with:
poetry run python3 db/init_db.py
The app starts with:
poetry run python3 main.py