Create a book manager app which stores Books and Users data in the DB and create apis to perform crud operation on both of them.
Later add authentication and authorisation based on JWT tokens on certain actions perfomed on the books by distingusing the role of the user {admin, author, user} and restrict certain apis to user, author and admin respectively.
After that add apis for forgot and reset password.
- name
- age
- password
- book name
- no of pages
- price
- author id: To be used later
- register
- login
- get profile
- delete single user---admin user
- delete all users -- admin
- forgot password --
- reset password --
- create
- update -- author
- get single
- get all
- delete single -- admin --author
- delete all -- admin
server.js [FILE] - Main server file should be in root directory of project
routes [FOLDER] - Should contain all api routes files
controllers [FOLDER] - Should contain all controller files
models [FOLDER] - Should contain all model files
middlewares [FOLDER] - Should contain all middlewares files To be used later
- use
async
rather thanthen
andcatch
- use ES6+ coding style and structure
- manage project using git and github