Web App / 2024 / Complete
A complete travel accommodation marketplace inspired by Airbnb. Property owners list their rentals with photos, descriptions, prices, and availability. Travelers browse listings with an interactive Mapbox map showing property locations geographically. Full CRUD functionality for listings, a guest review system, multi-step property creation, and OAuth-based authentication with Passport.js for secure multi-user access.

01 / The challenge
Building a two-sided marketplace where property owners and travelers interact separately but their data interconnects. Managing user permissions, preventing unauthorized edits, and displaying geospatial data efficiently while handling large image uploads.
02 / The solution
Implemented role-based access control so property owners can only edit their own listings. Used Passport.js for secure authentication and session management, and integrated the Mapbox API to geocode listing addresses into interactive map markers with filtering. MongoDB relationships link User → Listing → Reviews with proper indexing and lazy-loaded images.
03 / Built with