Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kanzariya-maulik/airbnb
An immersive web application inspired by Airbnb, enabling users to explore and manage listings with a fully responsive design. Developed using modern web technologies like Node.js, Express, MongoDB, and EJS templates, this project showcases robust features including authentication, dynamic content rendering, and form validation.
https://github.com/kanzariya-maulik/airbnb
backend ejs express frontend html-css-javascript nodejs
Last synced: about 5 hours ago
JSON representation
An immersive web application inspired by Airbnb, enabling users to explore and manage listings with a fully responsive design. Developed using modern web technologies like Node.js, Express, MongoDB, and EJS templates, this project showcases robust features including authentication, dynamic content rendering, and form validation.
- Host: GitHub
- URL: https://github.com/kanzariya-maulik/airbnb
- Owner: kanzariya-maulik
- Created: 2024-11-24T07:29:04.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2025-01-20T12:18:41.000Z (1 day ago)
- Last Synced: 2025-01-20T13:20:55.146Z (1 day ago)
- Topics: backend, ejs, express, frontend, html-css-javascript, nodejs
- Language: EJS
- Homepage: https://airbnb-64m2.onrender.com/listing
- Size: 3.76 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π Airbnb Clone
Welcome to the **Airbnb Clone** project! π β¨ This project replicates key features of the Airbnb platform, allowing users to explore listings, create accounts, and interact with the application.
## π Live Demo
[π Check out the live version here!](https://airbnb-64m2.onrender.com/listing)
## β¨ Features
- π **User Authentication** (Signup/Login using Passport.js)
- π‘ **Listing creation and management**
- πΌοΈ **Dynamic content rendering** with EJS templates
- β **Form validation** with Joi
- π± **Fully responsive design** for desktop and mobile## π οΈ Technologies Used
- **Frontend:** π¨ HTML, CSS, Bootstrap, EJS
- **Backend:** βοΈ Node.js, Express.js
- **Database:** ποΈ MongoDB (with Mongoose)
- **Authentication:** π Passport.js
- **Validation:** β Joi
- **Hosting:** π Render## π Installation
Follow these steps to run the project locally:
1. **Clone the repository:**
```bash
git clone https://github.com/kanzariya-maulik/Airbnb.git
```2. **Navigate to the project directory:**
```bash
cd Airbnb
```3. **Install the dependencies:**
```bash
npm install
```4. **Set up environment variables:**
- Create a `.env` file in the root directory.
- Add the following variables:
```env
DATABASE_URL=mongoURL
SECRET=hashing_secret
CLOUD_NAME=cloudinary_account_name
CLOUD_API_KEY=cloudinary_api_key
CLOUD_API_SECRET=cloudinary_api_secret
MAP_TOKEN=mapbox_token
```5. **Start the server:**
```bash
npm start
```6. **Open your browser and visit:**
```
http://localhost:8080
```## πΈ Screenshots
π Add some screenshots here to showcase your applicationβs UI and functionality.
## π Folder Structure
```
Airbnb/
|-- public/ # Static assets (CSS, JS, Images)
|-- routes/ # Application routes
|-- views/ # EJS templates
|-- models/ # Mongoose models
|-- controllers/ # Application logic and controllers
|-- init/ # Initialization scripts or configuration
|-- utils/ # Utility functions and helpers
|-- app.js # Main application entry point
|-- package.json # Dependencies and scripts
```## π€ Contributing
Contributions are welcome! π If youβd like to improve this project:
1. **Fork the repository.**
2. **Create a new branch:**
```bash
git checkout -b feature-name
```
3. **Make your changes and commit:**
```bash
git commit -m "Add feature-name"
```
4. **Push to your branch:**
```bash
git push origin feature-name
```
5. **Submit a pull request.** π## π Acknowledgements
- π [Airbnb](https://www.airbnb.com) for the inspiration.
- π [Render](https://render.com) for hosting the live demo.
- πΊοΈ [Mapbox](https://www.mapbox.com) for providing the mapping services.
- βοΈ [Cloudinary](https://cloudinary.com) for image hosting and management.
- π All contributors who helped make this project a success!