Skip to content

EasyRooms is a vacation rental platform where users can seamlessly register, log in, and manage their accommodations. Leveraging Cloudinary for image hosting, users can upload photos via file upload , enhancing their property listings. With features like secure authentication, booking capabilities, and an intuitive interface.

Notifications You must be signed in to change notification settings

csgaikwad/EasyRooms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

EasyRooms

Welcome to EasyRooms! 🏡🍽️ This project is a clone of Airbnb, focusing on "air bed and dinner" accommodations. It is created using the MERN stack with authentication using JWT, session management, state management with Recoil, and Material-UI for UI components. 🚀

Table of Contents

Description

EasyRooms is a clone of Airbnb with a twist - it focuses on providing "air bed and dinner" accommodations. Hosts can offer guests a cozy place to sleep and enjoy a home-cooked dinner. This project aims to replicate the core functionality and user experience of Airbnb while adding a unique dining experience for guests. 🍽️

Features

  • User authentication (login, registration) 🔐
  • Property listings with details and photos 🏠📸
  • Search and filtering functionality 🔍
  • Booking and reservation management 📅
  • User profiles with booking history 👤📚
  • Integration with dining experiences (optional) 🍽️
  • Responsive design for mobile and desktop 📱💻

Installation

To run this project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/csgaikwad/EasyRooms.git
    
  2. Install dependencies:

    cd EasyRooms/Client
    npm install
    
    cd ../Server
    npm install
    
  3. Set up environment variables:

    • Create a .env file in the server directory.
    • Add environment variables such as MongoDB connection string, JWT secret, etc.
  4. Start the development servers:

    // Start the client (React) server (cd into /Client)
    npm run dev
    
    // Start the server (Node.js/Express) server (cd into /server)
    node index.js
    

Technologies Used

  • MongoDB 🍃
  • Express.js 🚂
  • React ⚛️
  • Node.js 🖥️
  • NextJs :📁
  • JSON Web Tokens (JWT) for authentication 🔑
  • Passport.js for session management 🛂
  • Recoil for state management 🔧
  • Material-UI (MUI) for UI components 🎨

Contributing

Contributions are welcome! If you'd like to contribute to this project, please follow these steps:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature)
  3. Make your changes
  4. Commit your changes (git commit -am 'Add feature')
  5. Push to the branch (git push origin feature)
  6. Create a new Pull Request

About

EasyRooms is a vacation rental platform where users can seamlessly register, log in, and manage their accommodations. Leveraging Cloudinary for image hosting, users can upload photos via file upload , enhancing their property listings. With features like secure authentication, booking capabilities, and an intuitive interface.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published