Skip to content

m3tal10/Natours

Repository files navigation

Natours Application

Live Website link: https://natours-m3tal10.vercel.app/

API documentation link: https://documenter.getpostman.com/view/36963920/2sAXjF9aYh

Built using modern backend technologies: node.js, express, mongoDB, mongoose, and friends.

This is a fully functional backend-focused full-stack product-based application created with popular backend technologies.

Some of the key features of this application are: *RESTful architechture. *Search,sort,Field limit, pagination features.(yet to be implemented in the frontend but backend is fully functional.)

  • Super secure authentication, authorization, and protocol to prevent many known types of security breaches such as XSS, CSRF, SQL injection, etc.
  • Secure encryption of valuable information such as passwords, images, etc using Bcrypt and Sharp.
  • Payment gateway integrations with Stripe and Stripe webhooks.
  • Production-ready email handler that sends email on signup, and to recover forgotten passwords.
  • Image upload functionality using Multer.
  • Live interactive map on the tour details page using Mapbox.
  • Robust error handling.

This is mainly a Backend project, but I tried to implement this initially using the PUG template engine. As this is a Backend-focused project, many of the features were not implemented in the front end. However, the API is fully functional. The front end was implemented to present a demo of the work.

To test payment, use the following test card: card no.: 4242 4242 4242 4242 exp. date: any CVV: any

Notes:

  • The front-end website might take a minute to render for the first time because of the limitation of the hosting platform.
  • Use a VPN if the Stripe checkout page does not load. (This happens sometimes because of Stripe.)

Please feel free to give any feedback. If you are experienced with backend technologies then kindly check my API documentation. Your feedback is well Appreciated.