[client] --REST API-- [Connexion + Flask] -- [Marshmallow] -- [SQLAlchemy]
- Use Connexion to automagically parse API specifications written using OpenAPI/Swagger specifications and map/route the HTTP requests to the methods served up by a Flask server
- Use Marshmallow to serialize/deserialize Python objects and data types to/from SQLAlchemy objects
- Use SQLAlchemy to abstract SQL statements and data structures as regular Python objects and data types
- Setup a Python 3.8 virtual environment
- Install dependencies
(py38) $ pip install -r requirements.txt
- Create the DB
(py38) $ python build_database.py
- Use DB Browser for SQLite to view the DB
- Run the app
(py38) $ python server.py
- Check the APIs via the documentation auto-generated by the Swagger UI
http://localhost:5000/api/ui
- Try out the APIs using the sample app
http://localhost:5000/