NOTE! Building my own abstractions to show understanding of advanced python features, how and when to use them. In the real world, I will use existing solutions that have a huge community support and are well documented.
Requires Python3.9
make installTested with Postgres 14.1
export DATABASE_NAME="dbname"
export DATABASE_PASSWORD="***"
export DATABASE_PORT=5432
export DATABASE_USER="dbuser"
export DATABASE_HOST="dbhost"make dataRun command below and access endpoint at local PORT 8000  http://localhost:8000/search
eg: http://localhost:8090/search?term=structure_value&value=nike
make endpoint
# testing
curl http://localhost:8000/search?term=structure_value&value=nikemake testRequires Docker Engine >= 17.05
make dbuild
make ddatabasemake dloadmake dendpoint
Access endpoint at local PORT 8090
# testing
curl http://localhost:8090/search?term=structure_value&value=nike
make dtestmake dstop