WanderLust is a full-stack web application designed to simplify travel accommodation management. It allows users to search, book, and manage stays with seamless user authentication, real-time geolocation services, and robust error handling.
- Full CRUD Functionalities: Users can create, read, update, and delete accommodations.
- User Authentication: Secure authentication implemented using Passport.js.
- Cloud Services: Image and media management powered by Cloudinary.
- Database Management: MongoDB Atlas used for scalable and secure data storage.
- Backend Development: Built using Node.js and Express.js.
- Form Validations: Implemented on both frontend and backend for security and data integrity.
- Error Handling: Robust error-handling mechanisms for better user experience.
- GeoCoding & Mapping: Integrated Mapbox API for geolocation services.
- Hosting & Deployment: Web services hosted on Render.
- Scalability & Load Balancing (Work in Progress): Enhancements for handling increased traffic efficiently.
- Frontend: HTML, CSS, JavaScript
- Backend: Node.js, Express.js
- Database: MongoDB (MongoDB Atlas)
- Authentication: Passport.js
- Cloud Storage: Cloudinary
- Geolocation: Mapbox API
- Hosting: Render
-
Clone the repository:
git clone https://github.com/yourusername/WanderLust.git cd WanderLust -
Install dependencies:
npm install
-
Set up environment variables: Create a
.envfile and configure the following variables:PORT=8080 MONGO_URI=your_mongodb_atlas_uri CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name CLOUDINARY_API_KEY=your_cloudinary_api_key CLOUDINARY_API_SECRET=your_cloudinary_api_secret MAPBOX_TOKEN=your_mapbox_api_token SESSION_SECRET=your_session_secret
-
Start the server:
nodemon app.js
-
Open the application in your browser at
http://localhost:8080/listings
Check out the live version of WanderLust here: Live Link
- Implement scalability improvements to support higher user traffic.
- Introduce load balancing mechanisms for better performance.
- Enhance UI/UX for a smoother booking experience.
- Expand search and filter functionalities for better accommodation discovery.
Contributions are welcome! Feel free to submit pull requests or report issues. Feel free to update the repository link and environment variables with your actual credentials before deployment.