This guide will teach you how to build a fully functional REST API with patterns and recipes on how to use Node.JS and other technologies in this architecture pattern. It's purpose is to help anyone starting their software development journey or Junior developers sail into the Medior seas.
What you will learn in this project:
Node.js
Express
MongoDB with Mongoose
JWT for Authentication
Docker
Chai and Mocha for API testing
Bash scripting for build and automation processes
Pug for Email templating
This architecture template will be featured on https://infinitumcoders.com where you can find a detailed, tutorial-like, documentation for this and other projects.
🚨 Go to Infinitum Coders and subscribe to get the latest alerts for this and other featured projects. 🚨
- RESTful API design and development with advanced features (filtering, sorting, pagination)
- Creating basic CRUD resourse handlers with a generalized handler factory
- Express middlewares
- Modern authentication with JWT: user sign up, log in, password reset, secure cookies, etc.
- Authorization (user roles)
- Advanced error handling with global error handling middleware
- Server-side email templating with Pug templates and sending emails
- Fundamentals of Mongoose (MongoDB JS driver): Data models, CRUD operations, data validation and middleware
- Docker
- API testing with Mocha and Chai
🚧 We will be acceptind pull requests and updating the project in the future, so please share your thoughts, suggestions and wishes on Infinitum Coders and we'll try to get those updates ASAP.
👉 If there are any Software Engineering Veterans out there looking at this, your impressions are more than welcome!
Thanks for reading and happy coding!