Skip to content

BnbLite is a full-stack web application that allows users to list properties and discover the perfect places for their holidays

Notifications You must be signed in to change notification settings

Vishalshukla6395/BnbLite

Repository files navigation

BnbLite 🏠

BnbLite is a full-stack web application that allows users to list properties and discover the perfect places for their holidays. This project was developed to enhance my full-stack development skills, providing a seamless experience for both property owners and travelers.

Table of Contents 📑

  • Project Overview
  • Features
  • Tech Stack
  • Live Demo
  • Installation
  • Usage
  • Contributing
  • Contact

Project Overview 🚀

BnbLite is a full-stack web application that allows users to list properties and discover the perfect places for their holidays. This project was developed to enhance my full-stack development skills, providing a seamless experience for both property owners and travelers.

Features 🌟

  • Property Listings

    • Hosts can create, update, and manage property details, including images and descriptions.
  • User Reviews

    • Users can leave, read and delete reviews to share their experiences.
  • Responsive Design

    • Fully optimized for desktop and mobile devices for seamless user experience.
  • Search Functionality

    • Users can search listings by location, price range, or amenities.
  • Filter By Categories

    • Users can filter listings based on various categories like Beach, Pool, Treehouses etc.
  • Authentication System

    • Secure user authentication using Passport.js for login and sign-up functionality.
  • Data Validation

    • Ensures all inputs (e.g., listing details, reviews) are validated for accuracy and completeness.
  • Error Handling

    • User-friendly error messages and feedback for smoother user interaction.
  • API Integration

    • RESTful APIs for efficient data fetching and updating across the application.
  • Scalable Architecture

    • Designed for scalability to accommodate future additions like booking systems or payment gateways.

Tech Stack ⚙️

  • Frontend: Ejs, Bootstrap, HTML, CSS, JavaScript
  • Backend: Node.js, Express.js, Map APIs, MVC model
  • Database: MongoDB (MongoDB Atlas for cloud hosting)
  • Deployment & version control: Git, Github, Render

Live Demo 🚀

Check out the live version of the BnbLite here: Live Demo

Installation 💻

To get started with BnbLite locally, follow these steps:

1. Clone the repository:

git clone https://github.com/vishalshukla6395/bnblite.git
    

2. Navigate to the project directory:

cd bnblite

3. Install dependencies:

npm install

4. Start the application:

node app.js

Usage 🔧

  • Once the application is set up and running, open your browser and go to http://localhost:8080 to start using the app.

  • Create a new account or log in if you already have one.

  • Browse available properties, leave your experience about places in reviews, find or search for a place.

  • Admin users can log in and manage property listings and crud operations for listings and reviews.

  • Browse and filter listings based on your favourite Category

Contributing 🤝

  • Contributions are welcome! If you'd like to improve or add features to the BnbLite project, follow these steps:

    1. Fork the repository.

    2. Create a new branch:

       git checkout -b feature-name.
    

    3. Commit your changes:

        git commit -m 'Add new feature'.

    4. Push to the branch:

       git push origin feature-name.

    5. Open a pull request.

Thank You! 🙏

Thank you for considering contributing to BnbLite! Your contributions help make this project better for everyone. We appreciate your time and effort!

Contact 📬

If you have any questions or feedback, feel free to contact me: