A production-inspired Airbnb clone built with Node.js, Express.js, MongoDB, Passport.js, Cloudinary, MapTiler, and Bootstrap, featuring secure authentication, property listings, image uploads, reviews, and interactive maps.
- 🔐 Secure Authentication & Authorization
- 🏡 Create, Edit & Delete Property Listings
- 📸 Cloudinary Image Uploads
- ⭐ Reviews & Ratings
- 🌍 Interactive Maps with Geocoding
- 👤 Host Ownership & Route Protection
- 📱 Fully Responsive UI
- 💬 Flash Messages & Form Validation
Additional Technologies
- Bootstrap 5
- EJS
- Mongoose
- Passport.js
- Express Session
- Cloudinary
- Multer
- MapTiler
- Joi
- Axios
- Connect Flash
- Method Override
Client
│
▼
Express.js Server
│
▼
Authentication (Passport.js)
│
▼
Controllers
│
▼
MongoDB (Mongoose)
│
├── Cloudinary
└── MapTiler
git clone https://github.com/Sairaj2033/Airbnb.git
cd Airbnb
npm installCreate a .env file
ATLASDB_URL=
SECRET=
CLOUD_NAME=
CLOUD_API_KEY=
CLOUD_API_SECRET=
MAP_TILER=Run the application
npm startOpen:
http://localhost:8080
- MVC Architecture
- RESTful Routing
- Authentication & Authorization
- CRUD Operations
- MongoDB & Mongoose
- Cloud Image Storage
- Session Management
- API Integration
- Input Validation
- Production-Ready Backend Development
- ❤️ Wishlist
- 📅 Booking System
- 💳 Payment Integration
- 🔍 Advanced Search & Filters
- 🌙 Dark Mode
Sairaj Patil
- 🐙 GitHub: https://github.com/Sairaj2033
- 💼 LinkedIn: https://linkedin.com/in/sairaj-patil-631701311
- 📧 sairajpatil035@gmail.com