1) About the Project

💡 Inspiration

Every "best places in India" list reads the same — the same ten monuments, written by people who never went. Meanwhile, the real recommendations live in thousands of creator videos and local blogs that no search box can cross-reference.

We wanted a travel concierge that starts from who you are — the films you love, the music you play, the food you crave — and answers with places real creators actually vouched for, not SEO sludge.

Qloo's Taste AI made the first half possible: taste is cross-domain, so loving A.R. Rahman and Interstellar can genuinely predict a destination. We built the second half ourselves — a creator-verified evidence graph of India.

🧭 What It Does

TasteTrail is an agentic, cross-domain travel concierge for India:

  • You describe your taste in plain language. Qloo's Taste AI expands it into destinations and the films, shows, music & books that share your taste DNA — shown as an explainable graph.
  • For each place, you get creator-verified spots — every recommendation is backed by a real YouTube creator or blog, with the exact quote and timestamp ("✓ See the proof").
  • It layers on an interactive India map (day-by-day pins, nearest airport, one-tap flight search), a live cultural scene (festivals in season during your trip), a local culture pack (greetings, etiquette, must-try dishes), and trails to extend one city into a themed route.
  • It's resilient: if every LLM is rate-limited, a deterministic planner still assembles a full, verified plan from Qloo + the evidence graph.

🛠️ How We Built It

Two systems:

  1. The evidence graph (Python pipeline → Supabase):
    A gate → extract → resolve → score pipeline ingests creator videos (YouTube transcripts) and travel blogs, extracts claims about specific places with an LLM, resolves them to canonical entities, and scores them.

It is exported to a static JSON snapshot the app reads — 1,700+ POIs across 120+ cities, backed by 70+ creators, keyless-geocoded (Photon/OSM) for the map.

  1. The app (Next.js 16 + React 19 on Vercel):
    A tool-calling agent orchestrates Qloo's /search, /insights and taste-expansion endpoints, cross-ranks our verified places against Qloo's own venue picks, and composes a narrated itinerary.

Share links and saved trips persist in Vercel KV (Upstash).

Conceptually, a place $p$ is ranked by creator consensus, confidence, and whether Qloo independently corroborates it:

$$ \text{score}(p) \;=\; \sigma!\big(k\,(f_p - 1)\big)\,\cdot\,\bar{c}_p\,\cdot\,\big(1 + \lambda\,\mathbb{1}[\text{Qloo corroborates }p]\big) $$

where $f_p$ is the number of distinct creators vouching for $p$, $\bar{c}_p$ is the mean extraction confidence, $\sigma$ is the logistic function, and the last term boosts places Qloo's Taste AI surfaces on its own.

📚 What We Learned

  • Taste is a better travel prompt than a search query. Qloo's cross-domain signal routes "trekking + Coldplay + mountain cafes" to the right kind of place, not just keyword matches.
  • Trust is a feature. Judges and users relax the moment they see the receipt — the creator's face, the quote, the timestamp.
  • Free tiers have sharp edges. Daily caps, per-minute token limits, and geocoder throttling each quietly broke a batch until we designed around them (provider fallbacks, bulk-friendly Photon, pooler-safe DB connections).

🧗 Challenges We Faced

  • Serverless has no disk. Our share feature wrote files to a read-only filesystem — invisible locally, broken in production. Fixed with Vercel KV.
  • Bundling a 3 MB snapshot on Vercel. A dynamic fs read wasn't traced into the function bundle (500s in prod) until we forced it with outputFileTracingIncludes.
  • Geocoding at scale. Nominatim hard-throttles bulk runs; we switched to Photon and made the geocoder hold no DB connection across network calls.
  • Vague prompts. "Himalayas please" first returned only destination options; we taught the agent to commit to a region-appropriate northern city (Kashmir → Srinagar, Ladakh → Leh) instead of a static default.

🚀 What's Next

Multi-city routing, a mobile PWA, and opening the evidence pipeline so creators can claim and enrich their own places.

Built With

Share this project:

Updates

Submission history