Skip to content

feat: redone the structure of the app for better & easy maintainability

Sarthik Gupta requested to merge feat/reorganise-app-structure into main

Changes

Refactoring includes:

  1. Added flask-restx as a package to transform routes into resources.
  2. Used the DAO Pattern for Subscriptions with as much inheritance as possible to make the code easy to organise & maintain.
  3. Fixed the startup issues with the clumsy import pattern.
  4. Created 3 different layers of endpoints, Internal API's, External API's & Template Routes.
  5. All the dashboard templates call the Internal API's for data. This makes the abstraction between frontend & backend possible.
  6. Added scripts for running the backend & the mock server in the pipenv.

Notes

  1. Signup & Login Flow is working. There might be some error-handling left, but with the new structure that should be easy to add.
  2. Creating, Modifying & Deleting subscriptions is in works, and should be done really soon.
  3. Celery with RabbitMQ for cron scripts is being tested locally, and will be added subsequently.
Edited by Sarthik Gupta

Merge request reports