Skip to content

IslamEssam01/natours

Repository files navigation

Natours

Natours is a modern, feature-rich web application for booking outdoor tours. It is built using Node.js, Express, MongoDB, and Pug.

Features

  • User Authentication: Sign up, log in, and manage your profile.
  • Tour Booking: Browse available tours and book your adventure.
  • Real-time Notifications: Receive updates about your bookings.
  • Interactive Maps: View tour locations on dynamic maps.
  • Responsive Design: Optimized for both desktop and mobile devices.

Getting Started

Prerequisites

  • Node.js
  • npm

Installation

  1. Clone the repo:
    git clone https://github.com/IslamEssam01/natours.git
  2. Navigate to the project directory:
    cd natours
  3. Install dependencies:
    npm install

Configuration

  1. Create a .env file in the root directory and add your environment variables (e.g., database URI, JWT secret).
  2. Example .env file:
    NODE_ENV=development
    DATABASE=mongodb:https://localhost:27017/natours
    JWT_SECRET=your_jwt_secret

Running the App

  • Development Mode:
    npm run dev
  • Production Mode:
    npm run start:prod

Folder Structure

  • /controllers: Contains route handlers.
  • /models: Mongoose models.
  • /routes: API routes.
  • /views: Pug templates.
  • /public: Static files (CSS, JS, images).

Built With

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published