Giter Club home page Giter Club logo

natours's Introduction

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

natours's People

Contributors

mohammedzaher avatar

Stargazers

Moaaz Elsayed avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.