Skip to content

aryangupta-19/StayFinder

Repository files navigation

StayFinder

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.

Live Demo

🌐 Deployed on Railway https://major-project-production-39a2.up.railway.app/listings

Features

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

Tech Stack

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


Installation and SetUp

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

Developed by Aryan Gupta

Feel free to explore the repository and contribute improvements.

About

This is My First Full Stack Project deployed on railway.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors