We used Mongodb which is a NoSql database. In the project we have configured it to used it with mLab which is used as cloud database for both local and production enviroment by default. You can create your own mLab account and integrate it with your database by entering connectionstring in food-delivery-api/app.js
Express JS contains all the configuration details related to node server. It performs the following tasks:
Create and start server
Add different middleware namely:
bodyParser: Parse body params and attache them to req.body
Compress: Helps in decreasing the size of the response body and improve the speed of the API calls.
Json web token: Helps in generating authentication token
It handles the different GraphQL routes of the application, namely:
auth: This route contains different routes related to the user such as registration of the new user, updating the user details, manages login and logout.
food: Manages food schema such as adding, deleting, editing and liking food.
It handles the different REST routes of the application, namely:
GraphQL: It handles all routes related to GraphQL.
Paypal: It handles when payment is made using Paypal.
Stripe: It handles when payment is made using Stripe.