Skip to content

sarthaksharma27/Airbnb-clone

Repository files navigation

Airbnb Clone with MERN Stack Using EJS

F9WBlWhWYAAZGi4

This project is an Airbnb clone developed using the MERN (MongoDB, Express.js, Node.js) stack, but with EJS (Embedded JavaScript) as the templating language. The application utilizes various NPM packages and libraries to provide functionality similar to Airbnb, allowing users to perform CRUD operations, add ratings, and more.

Features

  • User Authentication: User authentication system using (explain the method or package used).
  • Property Listings: Display property listings with details using EJS templates.
  • CRUD Operations: Users can perform Create, Read, Update, and Delete operations on property listings.
  • Ratings and Reviews: Allow users to add ratings and reviews to properties.
  • Image Upload: Implement functionality to upload property images.

Tech Stack

  • Frontend: EJS templating engine
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • Other Notable Libraries and Tools:
  1. @mapbox/mapbox-sdk

    • Version: ^0.15.3
  2. cloudinary

    • Version: ^1.41.0
  3. connect-flash

    • Version: ^0.1.1
  4. connect-mongo

    • Version: ^5.1.0
  5. dotenv

    • Version: ^16.3.1
  6. ejs

    • Version: ^3.1.9
  7. ejs-mate

    • Version: ^4.0.0
  8. express

    • Version: ^4.18.2
  9. express-session

    • Version: ^1.17.3
  10. joi

    • Version: ^17.10.2
  11. method-override

    • Version: ^3.0.0
  12. mongoose

    • Version: ^7.5.2
  13. multer

    • Version: ^1.4.5-lts.1
  14. multer-storage-cloudinary

    • Version: ^4.0.0
  15. passport

    • Version: ^0.6.0
  16. passport-local

    • Version: ^1.0.0
  17. passport-local-mongoose

    • Version: ^8.0.0

Installation

  1. Clone the repository.

    git clone https://github.com/yourusername/airbnb-clone.git
  2. Install dependencies.

    cd airbnb-clone
    npm install
  3. Set up environment variables and configure the database connection.

  4. Run the application.

    node app.js