Skip to content

Krushnaapatil/Wanderlust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📌 Wanderlust – Travel Listing Web Application

A full-stack, server-rendered travel accommodation listing platform built with Node.js, Express, MongoDB, Mongoose, and EJS. The application supports full CRUD operations, server-side validation, clean templating with EJS layouts, and fully structured RESTful routing.

🚀 Features

📄 Full CRUD Support — Create, Read, Update, Delete travel listings

🛡️ Server-Side Validation using Joi

🗄️ MongoDB + Mongoose Integration

🎨 Responsive UI using Bootstrap 5

🧩 EJS Layouts & Partials (Navbar, Footer, Boilerplate)

🌐 RESTful Routing with method-override support for PUT & DELETE

⚙️ Error Handling Architecture with custom ExpressError class

🔁 Async Wrapper Utility (wrapAsync) for clean route handlers

🧪 Sample Seed Data via /init scripts

📁 Organized project structure following MVC principles (lightweight MVC)

🏗️ Tech Stack

Frontend: EJS, Bootstrap 5, Custom CSS, Client-side Bootstrap validation Backend: Node.js, Express.js Database: MongoDB, Mongoose ODM Utilities: Joi Validation, Method Override, EJS-Mate Layout Engine

🛠️ Installation & Setup

  1. Clone the Repository git clone https://github.com/your-username/wanderlust.git cd wanderlust

  2. Install Dependencies npm install

  3. Start MongoDB

Make sure MongoDB is running locally:

mongod

  1. Seed the Database (optional) node init/index.js

  2. Run the Server node app.js

Access the app at: 🔗 http://localhost:3000

Access the app at: 🔗 http://localhost:3000

About

Wanderlust – Travel Listing Web Application

Topics

Resources

Stars

Watchers

Forks

Contributors