An open API service indexing awesome lists of open source software.

https://github.com/akshaydarekar5252/wanderlust-project

WanderLust is a full-stack web application for browsing and booking vacation accommodations like houses, villas, and farmhouses. Users can also list their own properties, book rentals, view locations on Mapbox, and log in via Google or GitHub.
https://github.com/akshaydarekar5252/wanderlust-project

bootstrap css ejs-templates express-js html5 javascript mongodb mongoose node-js

Last synced: 3 months ago
JSON representation

WanderLust is a full-stack web application for browsing and booking vacation accommodations like houses, villas, and farmhouses. Users can also list their own properties, book rentals, view locations on Mapbox, and log in via Google or GitHub.

Awesome Lists containing this project

README

          

# 🌍 WanderLust Project

WanderLust is a full-stack web application for browsing and booking vacation accommodations like houses, villas, and farmhouses. Users can also list their own properties, book rentals, view locations on Mapbox, and log in via Google or GitHub.

## 🚀 Features

- Property listing & booking system
- User authentication (Google & GitHub OAuth)
- Image upload with Cloudinary
- Location display using Mapbox
- Flash messages and form validation
- Responsive UI using Bootstrap

## 🛠️ Tech Stack

### Frontend
- HTML5, CSS3, JavaScript
- Bootstrap
- EJS templating

### Backend
- Node.js, Express.js

### Database
- MongoDB with Mongoose

### Other Tools
- Passport.js (Authentication)
- Mapbox API (Maps)
- Cloudinary (Image storage)
- Multer (File uploads)
- Joi (Validation)
- Express-Session, Connect-Mongo
- Dotenv, Cookie-Parser

## 📁 Folder Structure

```
WanderLust/

├── models/ # Mongoose models
├── routes/ # Route files
├── views/ # EJS templates
├── public/ # Static files (CSS, JS)
├── utils/ # Helper functions
├── app.js # Main server file
└── .env # Environment variables
```

## 🤝 Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you’d like to change.