preview : https://full-stack-project-nwss.onrender.com/listings
Wanderlust - Airbnb Clone Wanderlust is a full-stack marketplace application inspired by Airbnb that allows users to list properties, browse unique stays, and leave reviews. It features a robust MVC architecture, secure authentication, interactive maps for property locations, and image handling capabilities.
🚀 Features
1)Property Management: Users can create, read, update, and delete (CRUD) property listings with details like price, location, and images.
2)User Authentication: Secure Signup, Login, and Logout functionality using Passport.js.
3)Review System: Users can leave ratings and written reviews for properties they have visited.
4)Map Integration: Integrated Mapbox to automatically geocode locations and display interactive maps on listing pages.
5)Image Storage: Seamless image uploads and storage using Cloudinary.
6)MVC Architecture: Organized code structure (Models, Views, Controllers) for scalability and maintenance.
🛠️ Tech Stack
Frontend:
1)EJS (Embedded JavaScript)
2)Bootstrap 5
3)CSS3 & Custom Styles
4)JavaScript (DOM Manipulation)
Backend:
1)Node.js & Express.js
2)MongoDB & Mongoose
3)Passport.js (Authentication)
4)Services & APIs:
5)Maps: Mapbox GL JS & Geocoding API
6)Storage: Cloudinary (Image Hosting)
7)Validation: Joi (Server-side validation)
⚙️ Environment Variables To run this project, you will need to add the following environment variables to your .env file in the root folder:
🚀 Getting Started Prerequisites
Node.js (v14 or higher)
MongoDB (Atlas Account)
- Installation
Clone the repository: git clone https://github.com/your-username/wanderlust.git cd wanderlust
- Setup Project
Install the necessary dependencies: npm install
- Configure Environment
Create a .env file in the root directory and add the variables listed in the Environment Variables section above.
- Access the App
Start the server: node app.js
Open http://localhost:8080 in your browser to view the application.