Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

70 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Natours

Welcome to Natours, a RESTful api and web application for booking nature tours and exploring the beauty of the natural world.

Badges

NodeJS Express.js MongoDB JWT Git GitHub

Code Style πŸ“œ

The code style is enforced using eslint and prettier.

Table of Contents

About

Natours is a fictional web application designed to showcase the beauty of nature and provide a platform for booking guided nature tours. Whether you're an adventure seeker or a nature enthusiast, Natours offers a variety of tours to explore breathtaking landscapes and connect with nature.

Demo πŸ“·

Check out our live demo here.

Screenshots

image image image image image image image

Tech/Framework used

Getting Started

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Node.js and npm installed
  • MongoDB installed and running

Installation

To install Natours, follow these steps:

  1. Clone the repository:

    git clone https://github.com/yourusername/natours.git
  2. Navigate to the project directory:

    cd natours
  3. Install dependencies:

    npm install
  4. Set up environment variables: To run this project, you will need to add the following environment variables to your .env file NODE_ENV=production DATABASE USERNAME database username PASSWORD database password JWT_SECRET JWT_EXPIRES_IN JWT_COOKIE_EXPIRES_IN EMAIL_USERNAME EMAIL_PASSWORD EMAIL_HOST EMAIL_PORT EMAIL_FROM STRIPE_SECRET_KEY

  5. Start the application:

    npm run start

Usage

Once the application is up and running, you can visit http://localhost:3000 in your web browser to explore and book nature tours. To book a tour you can use test credit card

API

Natours provides a RESTful API for accessing tour data and performing various actions. You can find the API documentation here.

Features

  • User registration and authentication
  • Sign up, Log in, Logout, Update, and reset password.
  • Browse and search for available tours
  • View tour details, including itinerary and pricing
  • Book tours and make secure payments
  • User reviews and ratings for tours
  • User dashboard to manage bookings and reviews

To Do

[] Implement Sign Up page [] Fix CalcAverageRatings functionality

Releases

Packages

Used by

Contributors

Languages