Inspiration
This is my first hackathon. I was looking for one to enter, and Claude found a few options for me. This one caught my eye.
I didn't know Qloo, so the first thing I did was ask Claude to explain what it actually does: taste data that knows what people in a place like, across music, venues and more, down to the neighbourhood.
That's when it clicked. I have a friend who busks, Victoria Queen (Spotify, YouTube, Instagram), and busking is guesswork. You pick a corner, a time and a set list on gut feel, then find out the crowd walking past wanted something else. Foot traffic tells you how many people walk by, but not who they are or what they'd stop for. Qloo knows that second part.
So the idea was simple: an agent that reads a city's taste for you, and tells you where to busk, when, and what to play for the crowd at each pitch.
What it does
You tell Busk Map who you are: the artists you sound like (from Spotify), the songs you can play, and when you're free. A Claude agent then researches the city live, and you watch every step in plain words:
- Where: Qloo's heatmap shows where your taste concentrates. The agent ranks real pitches by taste, venues open nearby, events letting out, foot traffic and weather, and keeps the top 3 at least 250 m apart.
- Who: for each pitch, Qloo tells it who the local crowd likes and how they compare with your fans.
- What to play: a suggested set for each pitch, ordered by how well each song's artist lands with that crowd.
- Songs you should learn: a separate agent run you start yourself. It uses Qloo's related artists, rising artists and each crowd's taste to suggest songs to add to your repertoire. Every run remembers the earlier ones, so a song is never suggested twice.
- Agent vs engine: every plan also shows what a plain AI picks with no data, so you can see what Qloo adds.
How we built it
- Qloo is the brain. 12 kinds of Qloo call drive the plan: search and entity lookup, the
urn:heatmaptaste map, places with opening hours, artists by location with explainability, crowd demographics, music genre tags, trending, andanalysis/comparefor "your fans vs the usual crowd". A new busk makes about 24–33 Qloo calls cold, and 0 on a rerun (cached for 24 h). - The agent: Claude through the Vercel AI SDK and AI Gateway. It calls real tools with real inputs, and every step, input and result streams to the page. Raw data sits behind a switch.
- Songs: Qloo has no song-level data, so Qloo picks the artists, and Spotify (with Last.fm as backup) gives their top tracks. Claude only ranks and explains, and never invents a song.
- Other data: live pedestrian sensors and council busking rules (where a city publishes them), Ticketmaster events, Open-Meteo weather, and MapLibre with OpenStreetMap.
- Stack: Next.js 16, React 19, TypeScript, Tailwind and shadcn/ui, Neon Postgres, Zod, Vitest and Playwright, deployed on Vercel. There's no login: your repertoire is saved on your device.
Challenges we ran into
- Asking Qloo about the right place. A lookup by city name sometimes resolves to a suburb, a state or a prefecture, so we query with a polygon around the city centre instead.
- Rate limits. Bursts drew 429s, so the client paces requests to 3 a second, retries politely, and caches every answer.
- Showing the agent without dumping JSON. We stream each tool call as a plain-words card, with the raw data one switch away.
- Making it honest. Busk Map never claims a pitch is legal. It points you to the local rules.
What we learned
- Location-scoped taste (heatmap plus artists by location with explainability) is what turns a generic music recommender into "play this song, here, now".
- An agent is far more convincing when you can see its research, and when you can compare it with a plain AI that has no data.
What's next
- More cities: Qloo's data already covers them. We tested 12 cities, from Sydney to Mexico City.
- Genre signals as well as artists.
- A week planner that learns from how you rate the pitches you accepted.
Built With
- ai-gateway
- anthropic
- claude
- last.fm
- maplibre
- neon
- next.js
- open-meteo
- openstreetmap
- playwright
- postgresql
- qloo
- react
- shadcn-ui
- spotify
- tailwindcss
- ticketmaster-api
- typescript
- vercel
- vercel-ai-sdk
- vitest
- zod






Log in or sign up for Devpost to join the conversation.