Airbnb Clone
A full-stack web application inspired by Airbnb, built to practice real-world web development concepts such as authentication, CRUD operations, database management, and responsive UI.
📸 Features
User authentication (Sign up / Login / Logout) Property listings with images Add, edit, and delete listings View listing details Responsive design Secure backend APIs Database integration
📸 Tech Stack
Frontend HTML CSS JavaScript EJS
📸 Backend Node.js Express.js
Database
MongoDB
📸 Tools & Libraries
Mongoose Passport.js (Authentication) Cloudinary (Image upload – if used) Git & GitHub
📂 Project Structure
airbnb-clone/ │ ├── models/ # Database schemas ├── routes/ # Application routes ├── controllers/ # Business logic ├── views/ # EJS templates / UI files ├── public/ # CSS, JS, images ├── config/ # Config & environment files ├── app.js # Main app file └── package.json
⚙️ Installation & Setup
Clone the repository
git clone https://github.com/your-username/airbnb-clone.git
Navigate to the project folder
cd airbnb-clone
Install dependencies
npm install
Set up environment variables Create a .env file and add:
MONGO_URI=your_mongodb_connection_string SESSION_SECRET=your_secret_key
Start the server
npm start
Open in browser
🎯 Learning Outcomes
Practical experience with full-stack development Understanding MVC architecture Working with authentication & authorization Handling real-world CRUD operations Deployment-ready project structure