Natours is a full-featured backend application built using Node.js, Express, and MongoDB. It serves as the backend for a travel booking platform that allows users to explore tours,login & register accounts, and make bookings.
This project is developed with a focus on:
- RESTful API architecture
- MVC (Model-View-Controller) pattern
- JWT-based authentication and role-based authorization
- Advanced error handling and security best practices
- Geo-spatial queries for tour locations
📁 Tech Stack: Node.js | Express.js | MongoDB | Mongoose | JWT | Multer | Stripe | Postman
- User Authentication & Authorization
- Tour CRUD operations
- User Reviews & Ratings
- Tour Booking using Stripe API
- Image Uploading & Resizing with Multer + Sharp
- Geo-based tour search
Clone the repo and install dependencies:
git clone https://github.com/aspreet31/natours.git cd natours npm install npm start running server at http://localhost:3000