Project link :- https://wanderlust.tushar-sonawane.xyz/
WanderLust is a full-stack hotel booking web application that allows users to explore hotel listings, view them on an interactive map, add their own listings, leave reviews, and securely book stays. Built with Node.js, Express, MongoDB, and MapTiler, WanderLust focuses on delivering a seamless travel-booking experience with a clean UI and powerful features.
- Secure signup, login, and logout
- Password hashing
- Session-based authentication
- Add new hotel listings with images
- Edit or delete your listings
- Image hosting powered by Cloudinary
- Supports Cloudinary image uploads
- Stores URLs in MongoDB
- Users can leave reviews and star ratings
- Edit/delete reviews
- Prevents duplicate reviews by the same user
- Interactive map using MapTiler API
- Shows hotel coordinates on map
- Improves user experience for location-based discovery
- Users can book hotels
- Booking records linked to user accounts
- Prevents double-booking behavior
- Search hotels by name, city, price, etc.
- Filter based on rating, location, or price
- Clean layout made with Vanilla CSS + Bootstrap
- Fully responsive on all devices
- HTML5
- CSS / Vanilla CSS
- Bootstrap
- JavaScript
- Node.js
- Express.js
- MongoDB Atlas
- Cloudinary β Image Hosting
- MapTiler API β Map Integration
Follow these steps to run WanderLust locally:
git clone <repository-url>
cd WanderLustnpm installAdd the following keys:
MAP_API=your_maptiler_api_key
CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name
CLOUDINARY_KEY=your_cloudinary_api_key
MONGO_URL=your_mongodb_atlas_connection_string
nodemon app.jsYour app will now run on:
http://localhost:8080/ (or your configured port)
WanderLust uses MongoDB Atlas, a cloud-hosted database solution. Collections include:
userslistingsreviewsbookings
Indexes are used for optimized searches and queries.
WanderLust is deployed on Render for production-ready hosting.
| Variable | Description |
|---|---|
MAP_API |
MapTiler API Key |
CLOUDINARY_CLOUD_NAME |
Cloudinary Cloud Name |
CLOUDINARY_KEY |
Cloudinary API Key |
MONGO_URL |
MongoDB Atlas Connection URI |
- MapTiler for map services
- Cloudinary for image storage
- MongoDB Atlas for database hosting