About the Project
Inspiration
I wanted a “Tinder for food” that actually returns real, mapped restaurants
and handles messy social links automatically.
What It Does
- Swipe to discover places; addresses are auto-fixed and geocoded before display.
- Right-swipe saves to your Crawl and pins the spot on a full-screen Mapbox map with a scrollable overlay list.
- TikTok (and IG-ready) link resolver:
oEmbed title → Gradient AI → SerpAPI → Mapbox geocode → a real place with coordinates. - Crawl page can trigger a dark, snarky AI roast
How I Built It
- Frontend: React, Vite, TypeScript, Tailwind, shadcn/ui, Framer Motion
- Mapping: Mapbox GL (telemetry blocked to avoid adblock issues)
- Backend: Node + Express (Gradient AI, SerpAPI, Mapbox Geocoding, optional ElevenLabs)
- Link Flow:
TikTok oEmbed → AI extraction → SerpAPI → address normalization → Mapbox geocode
Challenges
- Cleaning vague locations (e.g., “SoHo, NY”) into reliable street addresses.
- Avoiding blocked Mapbox telemetry calls while keeping the map responsive.
- Normalizing social captions into a single precise venue without user input.
What I Learned
- LLMs must return precise, validated addresses before geocoding.
- oEmbed + search + AI reliably turns social links into structured POI data.
- UX wins come from full-screen maps, overlay lists, and instant saves.
What’s Next
- Instagram Reel resolver.
- Crawl routing (ETAs + walking directions).
- Smarter dietary, budget, and radius-based re-ranking.
Built With
- express.js
- framer-motion
- gradient-ai
- mapbox-gl
- node.js
- react
- serpapi
- shadcn/ui
- tailwind-css
- typescript
- vite
Log in or sign up for Devpost to join the conversation.