- Secure user authentication and authorization
- Role-based access control (Admin, Lead-Guide, Guide, User)
- Tour analytics with MongoDB aggregations
- Real-time tour booking with Stripe
- Mapbox integration for geo-spatial queries and visualizations
- Review and rating system for tours
- Fully responsive frontend using Pug and SCSS
- Live App: Natours on Vercel
- API Documentation: Postman Docs
Base URL:
https://natours-project-u1.vercel.app/api/v1
Examples:
GET /tours— List all toursGET /tours/top-5-cheap— Top 5 cheapest toursGET /tours/tours-within/:distance/center/:latlng/unit/:unit— Get tours within a given distanceGET /tours/distances/:latlng/unit/:unit— Calculate distances from a location
To test the API using Postman, set up environment variables like:
{{URL}} = https://natours-project-u1.vercel.app
{{password}} = userpass- Backend: Node.js, Express, MongoDB, Mongoose
- Frontend: Pug, CSS, Parcel
- Auth: JWT (JSON Web Tokens)
- Payments: Stripe
- Emails: Mailtrap, SendGrid
- Maps & Geo: Mapbox
- Built as part of the Node.js, Express, MongoDB Bootcamp by Jonas Schmedtmann.Node.js Express MongoDB Bootcamp. A lot of credit and inspiration goes to this course and the phenomenal instructor. grid-template-co






