Skip to content

ArpitWandhare/wanderworld

Repository files navigation

🏡 WanderWorld – Travel Accommodation Listing Platform

WanderWorld is a full-featured, full stack web application for listing and discovering travel accommodations like farmhouses, villas, and rental homes. Built from scratch using the MERN stack + EJS, it allows users to explore properties, view real-time locations on maps, post their own listings, and interact through reviews and ratings — similar to platforms like Airbnb.


🔗 Live Demo

🌍 Explore WanderWorld


🧭 Project Overview

Feature Description
🏠 Property Listings Users can browse and filter accommodations across categories
➕ Add New Listings Logged-in users can post new listings with images, description, and price
📍 Location Maps Interactive maps powered by Mapbox API
🔐 Authentication & Authorization Secure user login, signup, session handling, role-based access
🌟 Ratings & Reviews Users can leave reviews and rate listings
📸 Image Uploads Image handling via Cloudinary + Multer
📋 Form Validation Input validation on both client and server sides using Joi and middleware

🛠️ Tech Stack

Layer Technology
Frontend HTML, CSS, Bootstrap, JavaScript, EJS Templates
Backend Node.js, Express.js
Database MongoDB (MongoDB Atlas)
Authentication Passport.js, JWT, express-session
Image Upload Cloudinary, Multer
Geolocation Mapbox API
Deployment Render (Backend + Frontend), MongoDB Atlas

💡 Features Highlight

  • 🔐 Secure Auth: Passport.js local strategy
  • 🗃️ Modular MVC: Organized codebase with MVC architecture
  • 🗺️ Interactive Map: Real-time property geolocation with Mapbox
  • 🖼️ Image Upload: Integrated Cloudinary for seamless image hosting
  • 📝 Server-side Rendering: Built using EJS templates with dynamic views
  • 💬 Reviews System: Authenticated users can rate and review listings
  • 🧪 Error Handling: Express error middleware for clean user feedback

📦 Packages Used

  • express, mongoose, passport, ejs, dotenv
  • multer, cloudinary, connect-flash, express-session, joi
  • mapbox, method-override, mongoose, and more...

🌐 Deployment

  • Backend + Frontend: Deployed on Render
  • Database: MongoDB Atlas
  • Static Files: Served via Express middleware
  • Image Storage: Cloudinary

🎯 Learning Outcomes

  • End-to-end full stack project development (MERN + EJS)
  • User auth, authorization, and session management
  • Real-world RESTful API design
  • File uploads, geolocation APIs, and dynamic UI rendering
  • Error handling, validation, and deployment practices

👨‍💻 Author

  • Arpit Wandhare

Gmail Portfolio linkedin LeetCode

⭐ Want to Support?

  • If you found this project helpful or inspiring:
  • ⭐ Star this repository
  • 🍴 Fork it for learning
  • 💬 Connect on LinkedIn

Releases

No releases published

Packages

 
 
 

Contributors