- Perform CRUD operations
- Filtering, Sorting, Limiting Fields and Pagination
- Top 5 Cheap Route
- Statistics Aggregation Pipeline
- Error Handling in Express
- Register User
- Login User
- Protect Route
- Restrict Access
- Forgot Password
- Reset Password
- Allow login user to update his password
- Allow login user to update his profile
- Allow login user to delete his account
- Allow login user to get his profile info
- Set security to avoid attacks
- Refactor the controllers
- Calculate Review's Rating and nRating
- NodeJs
- ExpressJS
- Mongoose
- MongoDB
- Bcrypt
- JSONWebToken