Skip to content

REST API built using NodeJS with ExpressJS as framework and MongoDB as database

License

Notifications You must be signed in to change notification settings

cyborg7459/Natours-Backend

Repository files navigation

Natours-Backend

A NodeJS learning project involving the creation of a restful API using NodeJS for backend coding, with Express as framework and MongoDB as database

Things done

  • Basic file structure setup (Following the MVC architecture)
  • Express set up
  • Set up of tour routes (CRUD) with dummy local data
  • Very basic middleware
  • Integration with database
  • Mongoose models created
  • API endpoints for tours written
  • Implemented API features of filtering, sorting, selecting, limiting and pagination, and also alias routes
  • Created tour statistics routes using aggregation pipeline
  • Wrote data validations in Tour model
  • Proper Error Handling with Express with separate error classes and controllers
  • Complete authentication with JSON web tokens with password reset functionality
  • Implemented CRUD operations on authenticated users
  • Implemented security features like Data Sanitization, rate limiting, etc
  • Modelled the data with appropriate referencing for reviews and users and tours
  • Wrote and implemented factory functions for commonly used routes
  • Implemented authorization
  • Implemented geospatial routes and queries

Next task

  • Front-end portion

About

REST API built using NodeJS with ExpressJS as framework and MongoDB as database

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published