Find Your Perfect Stay Anywhere
StayFinder is my first full-stack project, It is a accommodation discovery platform inspired by modern travel marketplaces. It allows users to explore property listings, upload new stays, leave reviews, and visualize locations on an interactive map.
The application demonstrates end-to-end web development, including authentication, RESTful APIs, cloud media storage, server-side validation, and responsive UI design.
⸻
🌐 Deployed on Railway https://major-project-production-39a2.up.railway.app/listings
Listings Management • Create new property listings • Edit existing listings • Delete listings • View all listings in a responsive grid layout • Individual listing detail pages
Image Upload System • Upload property images • Images stored securely using Cloudinary • File handling via Multer
Interactive Map • Integrated Mapbox to visualize listing locations • Displays geographic position for each property
Review System • Users can leave reviews on listings • Rating system with star UI • Users can delete their own reviews
Authentication & Authorization • Secure user signup and login • Session-based authentication • Authorization to ensure: • Only listing owners can edit/delete listings • Only review authors can delete reviews
Flash Messaging • User feedback using Connect Flash • Success and error notifications
Validation • Server-side validation using Joi • Client-side validation using Bootstrap forms
Responsive UI • Fully responsive interface built with Bootstrap • Optimized for desktop, tablet, and mobile screens
⸻
Frontend • HTML5 • CSS3 • Bootstrap • EJS (Embedded JavaScript Templates) • Font Awesome Icons
Backend • Node.js • Express.js
Database • MongoDB • Mongoose ODM
Cloud & External Services • Cloudinary – Image hosting • Mapbox – Interactive maps • Railway – Deployment platform
Middleware & Tools • Multer – File upload handling • Joi – Data validation • Express Session – Session management • Connect Flash – Flash messages
Clone the repository Navigate into the Project Install Dependencies Create .env file Run node app.js
This project showcases several important full-stack engineering concepts: • RESTful API design • MVC-style architecture • Authentication and session handling • File upload and cloud storage integration • Server and client-side validation • Responsive UI design • Third-party API integration • Secure authorization logic
Possible enhancements for the platform: • Advanced search and filtering • Booking system • Wishlist / favorites feature • Pagination for listings • Payment gateway integration • User profile pages
Feel free to explore the repository and contribute improvements.