Inspiration
Independent musicians often book tours by guesswork: the big cities, the venues they've heard of, the places a friend played. But audiences for a given sound cluster in specific cities and specific rooms. I wanted an agent that plans a tour from real taste data instead of hunches, and shows its reasoning so an artist can trust it.
What it does
You enter your artist (or a better-known artist you sound like) and a region. GigRoute's agent then:
- resolves the artist in Qloo and finds similar artists for local co-bills,
- ranks the cities where audiences for that taste over-index,
- ranks venues, bars and record shops in each city by audience affinity,
- finds cross-domain tastes (brands, films) for merch and poster ideas,
- orders the stops into a route on a map and drafts a data-backed pitch for each venue.
Every city and venue has a "Why this city / venue?" panel built from Qloo's affinity and explainability data: the affinity score, the tags that match your sound, and which artists' fans drove the result. Plans can be shared as a permalink or exported as Markdown or JSON.
How I built it
- Next.js App Router with React 19 and Tailwind, deployed on Vercel.
- A tool-calling agent over any OpenAI-compatible LLM. Its tools wrap the Qloo Insights API: search, tags, similar artists, destination and place insights with explainability, and brand and movie cross-domain insights.
- The plan streams to the browser over server-sent events after every agent step, so you watch the tour come together.
- An optional final step sends the grounded summary to NVIDIA Nemotron on Nebius Token Factory to rewrite it, and falls back to the deterministic summary if it fails.
- A mock mode with hand-written fixtures, so judges can click "See a sample tour" and get a full plan instantly with no keys.
Challenges I ran into
- Keeping the LLM from inventing venues or cities. The model only orchestrates tools; every city, venue and number on screen comes from Qloo results.
- Making explainability readable for musicians rather than data people.
- Qloo returns places in general, so the results mix venues with bars and record shops, and there's no capacity or date data.
Accomplishments that I'm proud of
- Every recommendation is explainable and traceable back to Qloo data.
- The whole app works end to end with a live Qloo key, and also in a clearly labelled sample mode.
- Lint, build and over 100 tests pass.
What I learned
Cross-domain taste data is powerful for creative planning. A city that over-indexes for your sound often isn't the obvious one, and signalling on an artist plus its closest similar artists gives much more stable results than the artist alone.
What's next for GigRoute
Real routing with dates and travel times, venue capacity and availability, and a way to send pitches straight to venue bookers once an artist approves them.
Built With
- api
- css
- next.js
- qloo
- react
- tailwind
- typescript
- vercel