- This project is a summary of this back-end trimester: authentication, NodeJS, MongoDB, Redis, pagination and background processing.
- The objective is to build a simple platform to upload and view files:
- User authentication via a token
- List all files
- Upload a new file
- Change permission of a file
- View a file
- Generate thumbnails for images
- You will be guided step by step for building it, but you have some freedoms of implementation, split in more files etc… (utils folder will be your friend)
- Of course, this kind of service already exists in the real life - it’s a learning purpose to assemble each piece and build a full product.
- Enjoy!
utils/redis.js
- Redis utils
utils/db.js
- MongoDB utils
server.js, routes/index.js, controllers/AppController.js
- First API
utils/, routes/index.js, controllers/UsersController.js
- Create a new user
utils/, routes/index.js, controllers/UsersController.js, controllers/AuthController.js
- Authenticate a user
utils/, routes/index.js, controllers/FilesController.js
- First file
utils/, routes/index.js, controllers/FilesController.js
- Get and list file
utils/, routes/index.js, controllers/FilesController.js
- File publish/unpublish
utils/, routes/index.js, controllers/FilesController.js
- File data
utils/, controllers/FilesController.js, worker.js
- Image Thumbnails
tests/
- Tests!
utils/, worker.js, controllers/UsersController.js
- New user - welcome email