Inspiration
We've all been there: wandering an unfamiliar city, stomach rumbling, cold sweat dripping, with no idea where the nearest restroom is. The existing maps are too cluttered. We wanted to build a "Panic Button" interface that cuts through the noise and solves one specific, urgent problem: I need a bathroom, and I need it NOW.
What it does
"Hold Your S#!t" is a precision delivery tool for human needs.
- Panic Interface: A giant, pulsing button for immediate action.
- Physics-Based Animation: A humorous "projectile" animation to lighten the mood while data loads.
- Smart Location: Instantly locates the user and filters for the nearest public restrooms.
- Gemini Intelligence: We use Gemini 3.0 to analyze metadata and reviews, providing a summary: "Is it clean?" and "Does it have paper?" so users don't walk into a disaster.
- Emergency Mode: A "Need Help" feature that finds nearby stores for supplies (tissue/pads) or provides one-tap access to local emergency medical numbers.
How we built it
- Frontend: Vue 3 + Vite for a responsive, mobile-first experience.
- Backend: Go (Golang) for high-performance API handling.
- Maps: Google Maps JavaScript API & Places API (New) for location services and POI search.
- AI: Google Gemini 3.0 Pro via the AI Studio API. We feed it raw location data and user reviews, and it outputs structured JSON indicating cleanliness levels and urgent summaries.
Challenges we ran into
Integrating the Google Places API (New) required migrating from legacy libraries. We also spent time perfecting the "parabolic throw" animation using CSS cubic-bezier functions to make the waiting time feel less stressful and more entertaining.
Accomplishments that we're proud of
We successfully turned a stressful situation into a smooth, even funny, user experience. The integration of the "Need Help" modal, which dynamically suggests nearby convenience stores for supplies using the Places API, adds a layer of genuine utility beyond just finding a toilet.
What's next for Hold Your S#!t
- Crowdsourced real-time status (e.g., "Queue is long").
- AR navigation to find hidden restroom entrances.
- Expansion to more cities with localized emergency numbers.
Log in or sign up for Devpost to join the conversation.