Skip to content

Nadjib4869/Mytours

Repository files navigation

Tours web App (RESTful API + Pug Template Engine)

This project is a tours web app. It was built using Node.js, Express, MongoDB, Mongoose and Pug. The API allows users to create, read, update, and delete tours, users, reviews and bookings. It also allows users to sign up, log in, and log out.

Features

Mapbox API for geocoding Stripe API for payments Sendgrid API for emails JWT for authentication Bcrypt for password hashing Mongoose for data modeling Multer for file uploads Sharp for image resizing Helmet for security Express Rate Limit for rate limiting CORS for cross-origin resource sharing HPP for HTTP parameter pollution XSS for cross-site scripting Express Mongo Sanitize for NoSQL query injection

Objectives

Deploying the APP on Azure

Use Chargily for payments instead of Stripe

Testing

Link to the deployed app on Render : Tours Web App

As you might know, when using Render with a free account, your application goes to sleep mode after every 15 minutes if there are no requests coming in for the application. This means it takes some time to load the application when the next request comes. So, please be patient when you try to access the application.

API Documentation

There is also an API at /api, with documentation available here.