Back to Projects
VibeMap hero image 1

The Challenge

Traditional maps show where things are, but never how spaces feel. People rely on word-of-mouth or personal experience to find places that match their energy, whether it's a quiet study spot or a vibrant social corner.

Existing reporting tools focus on incidents or problems, which can unfairly label neighborhoods or businesses. This negative framing discourages participation and can stigmatize areas based on isolated events.

Communities and urban planners lack tools to understand the emotional dynamics of public spaces in a way that is ethical, aggregated, and privacy-preserving.

The Solution

VibeMap reimagines community mapping through a human-centered lens. Users simply tap a location on the map, select an emoji that represents its "vibe," and optionally add a short note—capturing subjective feelings in an intuitive, low-friction way.

Submissions are aggregated in real time using Firebase Firestore, then rendered as soft, pastel-colored heatmaps and emoji markers. A thresholding algorithm prevents single reports from dominating, ensuring patterns reflect collective sentiment rather than outliers.

The design deliberately avoids harsh colors or judgmental labels—instead using a gentle spectrum from "off-vibe" to "bright"—to frame data as emotional impressions rather than definitive statements. No individual submissions are exposed, preserving user privacy.

Built during a hackathon, the lightweight interface combines Next.js with Leaflet and OpenStreetMap for seamless map interaction, demonstrating how technology can help communities understand shared experiences without amplifying harm.

Interface Gallery

VibeMap screenshot 1
VibeMap screenshot 2

Keep Exploring

FIELD SURVEY v26.10 — MINH TAM NGUYEN

>LOCATING OBSERVER ........................................51.0447°N 114.0719°W

>READING ELEVATION ........................................1,045 M

>RAISING THE ROCKIES ........................................OK

>CALIBRATING INSTRUMENTS ........................................OK

CLICK TO SKIP