Skip to content

StayBnb is a full-stack MERN application that replicates Airbnb’s core functionality. Users can browse and book vacation rentals, manage their bookings, and add properties to a wishlist. The platform ensures seamless authentication, real-time booking validation, and a user-friendly experience.

Notifications You must be signed in to change notification settings

rambedade/Stay-Bnb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 

Repository files navigation

🏡 StayBnb - Airbnb Clone

StayBnb is a full-stack MERN application that replicates Airbnb’s core functionality. Users can browse and book vacation rentals, manage their bookings, and add properties to a wishlist. The platform ensures seamless authentication, real-time booking validation, and a user-friendly experience.

🔗 Live Demo

🎯 Frontend: https://staybnb-omega.vercel.app/

🎯 Backend API: stay-bnb-wm93.onrender.com


🛠 Tech Stack

Frontend Backend Database Auth Deployment
React.js (Vite) Node.js (Express) MongoDB (Mongoose) JWT + bcrypt.js Vercel (Frontend)
Tailwind CSS REST API Mongoose ODM Protected Routes Render (Backend)

🚀 Features

✅ Browse & search properties
✅ View property details
✅ User authentication (Signup/Login)
✅ Secure JWT-based login
✅ Book properties & manage bookings
✅ Payment form simulation
✅ Booking history & user dashboard
✅ Mobile-friendly & responsive design


📸 Screenshots

Home Page Property Details Booking Page
image
Booking

🏗 Installation & Setup

1️⃣ Clone the Repository

git clone https://github.com/rambedade/Stay-Bnb
cd staybnb

2️⃣ Backend Setup

cd backend
npm install
  • Create a .env file in the backend folder:
    PORT=8080
    MONGO_URI=your_mongodb_connection_string
    SECRET_KEY=your_jwt_secret
    
  • Start the server
    npm start

3️⃣ Frontend Setup

cd frontend
npm install
  • Create a .env file in the frontend folder:
    VITE_API_BASE_URL=https://stay-bnb-wm93.onrender.com
    
  • Run the frontend
    npm run dev

🔥 API Endpoints

🔹 Authentication

Method Endpoint Description
POST /api/auth/signup Register a new user
POST /api/auth/login Login a user

🔹 Properties

Method Endpoint Description
GET /api/properties Get all properties
GET /api/properties/:id Get single property details
GET /api/properties/search?query= Search properties

🔹 Bookings

Method Endpoint Description
POST /api/bookings Create a new booking (Authenticated)
GET /api/bookings/user Fetch user-specific bookings

🌎 Deployment

✅ Frontend on Vercel

  1. Run vercel login
  2. Deploy: vercel

✅ Backend on Render

  1. Push backend code to GitHub
  2. Create a Render service for Express
  3. Add environment variables for MONGO_URI & SECRET_KEY
  4. Deploy backend 🚀

🤝 Contributing

👨‍💻 Want to improve StayBnb? Contributions are welcome!

  1. Fork the project
  2. Create a new branch (feature/new-feature)
  3. Commit changes (git commit -m 'Added feature')
  4. Push to GitHub & Create a PR

📜 License

📄 This project is open-source and available under the MIT License.


🎯 Contact

📧 Email: rambedade2308@email.com

🚀 Made with ❤️ by [Ram]

About

StayBnb is a full-stack MERN application that replicates Airbnb’s core functionality. Users can browse and book vacation rentals, manage their bookings, and add properties to a wishlist. The platform ensures seamless authentication, real-time booking validation, and a user-friendly experience.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published