This is project is based on the tutorial: https://www.howtographql.com/
GraphQL is used as a middleware between the application and database layer to achieve the following goals
- avoid overfetching or underfetching data in frontend.
- separate frontend and backend work at the beginning when declaring the graphql schema.
- do not need to make extra efforts in maintaining responses in api endpoints whenever frontend requires more data fields already in backend.
- Immplement frontend with react framework in the project
- Figure out how to use relay