Inspiration

Every independent bar and café has a dead night. The owner usually books it from gut feel: the same few acts, or a big name the room can't afford. The act they actually need sits next to their regulars' taste, and Qloo can find it.

What it does

You describe your venue in a sentence or two and name a few artists your regulars love. Encore then: 1) resolves those artists to Qloo entities (/search); 2) finds adjacent acts near you with Qloo Insights (filter.type=urn:entity:artist, signal.interests.entities, signal.location.query), capping popularity on a budget; 3) checks momentum for top candidates with /v2/trending (rising, steady or cooling); 4) finds co-promotion partners with a cross-domain Insights call (places whose audience overlaps); 5) scores booking fit 0–100 transparently: 45% Qloo affinity, 20% momentum, 20% budget fit (popularity as fee proxy, a stated assumption), 15% taste bridge; 6) maps where the fans live with a Qloo heatmap and marks the 3 strongest hotspots; 7) writes 2–3 event concepts with an LLM that may only use names Qloo returned; 8) a deterministic grounding node deletes any invented name and retries once. Each concept carries its evidence: fit score breakdown, affinity, explainability bars, momentum, partner affinity, plus a taste-bridge diagram.

How we built it

LangGraph StateGraph with 10 nodes and two conditional edges (stop early if no candidates; retry compose after a failed grounding check). Qloo client in httpx built to the hackathon developer guide (hackathon.api.qloo.com, X-Api-Key header) with caching, clear 401/403/429 errors and per-call provenance. Pluggable LLM: Groq free tier (openai/gpt-oss-120b) or a deterministic offline writer. Plain HTML/CSS/JS frontend served by FastAPI. 19 pytest tests passing. Hosted on Vercel with a live Qloo key.

Challenges we ran into

Keeping the LLM inside Qloo's results — prompting wasn't enough, so grounding became a separate deterministic node with a retry edge. Developing before the API key arrived — built a clearly fictional fixture universe so the flow and tests run offline. Learning hackathon-specific API details (base URL, header key, supported filter.type list, silently ignored params).

Accomplishments that we're proud of

An answer a venue owner can act on, with the "why" attached to every act. The agent cannot recommend an act Qloo didn't return. Fully reproducible: one pip install, one command, runs with or without keys.

What we learned

Location is where taste data matters most — an LLM can't tell a Hyderabad booker which part of the city their next crowd lives in, but a Qloo heatmap can. Explainability turns a recommendation into a decision.

What's next for Encore

Artist availability and fee data, a weekly "next four Thursdays" calendar, post-event feedback loops, a promoter mode.

Built With

Share this project:

Updates

Submission history