Skip to content

razi17571/Vacation-Rental-Platform

Repository files navigation

Airbnb Project

This project is a web application inspired by Airbnb, aimed at providing a platform for users to rent and book accommodations worldwide. It is built using modern web technologies and follows industry best practices.

Features

  • User registration and authentication: Users can create an account, log in, and manage their profile information.
  • Search and filter accommodations: Users can search for accommodations based on location, dates, and preferences. They can also apply filters to narrow down their search results.
  • Booking and payment processing: Users can book accommodations and make payments securely through the platform.
  • User reviews and ratings: Users can leave reviews and ratings for accommodations they have stayed in.
  • Host management and accommodation listings: Hosts can manage their listings, including adding new accommodations, updating availability, and managing bookings.
  • Messaging system: The platform provides a messaging system for communication between hosts and guests.

Routes

  • /register: POST request to create a new user account.
  • /login: POST request to log in to an existing user account.
  • /accommodations: GET request to retrieve a list of accommodations based on search criteria.
  • /accommodations/:id: GET request to retrieve details of a specific accommodation.
  • /bookings: POST request to create a new booking.
  • /bookings/:id: GET request to retrieve details of a specific booking.
  • /reviews: POST request to leave a review for an accommodation.
  • /users/:id: GET request to retrieve details of a specific user.
  • /users/:id/bookings: GET request to retrieve a list of bookings made by a specific user.
  • /users/:id/accommodations: GET request to retrieve a list of accommodations listed by a specific host.

Installation

  1. Clone the repository: git clone https://github.com/your-username/airbnb.git
  2. Navigate to the project directory: cd airbnb
  3. Install dependencies: npm install
  4. Set up the database: npm run setup-db
  5. Start the development server: npm run dev

Technologies Used

  • Node.js
  • Express.js
  • MongoDB
  • React
  • Redux
  • CSS Modules
  • Stripe API

Contributing

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

  1. Fork the repository
  2. Create a new branch: git checkout -b feature/your-feature
  3. Make your changes and commit them: git commit -m "Add your feature"
  4. Push to the branch: git push origin feature/your-feature
  5. Submit a pull request

License

This project is licensed under the MIT License. See the LICENSE file for more information.

Contact

For any inquiries or support, please contact the project maintainer at [email protected]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors