← Back to list

meet fan journey concierge: a genai command center for the fifa world cup 2026

stadiums during a world cup are among the most demanding environments in the world to move a crowd through gracefully. tens of thousands of…

janvi · 2026-07-10 08:08 · 0 claps · 4.3 min read
#fifa #hack2skill #genai #promptwar
Open on Medium ↗
Wiki topics: AI · AI · General ⚽ · Football / Soccer 🥊 · Combat Sports

meet fan journey concierge: a genai command center for the fifa world cup 2026

stadiums during a world cup are among the most demanding environments in the world to move a crowd through gracefully. tens of thousands of attendees, dozens of languages, a handful of gates, and a kickoff clock indifferent to congestion. fan journey concierge is a generative-ai assistant conceived to ease that burden for the fan and the operations team simultaneously, drawing on the very same underlying data.

recently, i participated in the hack2skill promptwars virtual hackathon. i decided to tackle challenge 4: smart stadiums and tournament operations, a track centered on modernizing how large-scale sporting events are managed. to meet that brief, i built fan journey concierge, a genai-powered platform designed to serve fans and operations staff alike during the fifa world cup 2026.

live demonstration: fifa-26-fawn.vercel.app

source code: github.com/janvis11/fifa-26

the premise, stated plainly

a single genai assistant, addressed to two audiences: the fan attempting to locate a seat, a restroom, or a shuttle home, and the operations team attempting to identify a bottleneck before it becomes a safety concern. both are served by the same simulated real-time crowd intelligence.

why the fan experience vertical

of every role within a stadium on match day, the fan’s is the one composed entirely of small, recurring wayfinding problems: where is my gate, is this concourse overcrowded, is there a step-free route available, and by what hour must i depart to make my train. resolving these questions well has a compounding effect-a calmer crowd, lighter traffic on the most congested paths, and fewer emergencies for staff to manage after the fact. the project is built outward from this singular persona, then extends the same crowd-simulation engine to a secondary operations dashboard for coordinators, rather than assembling two disconnected products.

what the assistant actually does

opening the live demonstration reveals what resembles a command center:

  • a stadium concierge, conversational in nature -posing questions about restroom locations, food concessions, gate navigation, or transport yields an answer reasoned by claude, not a static list of frequently asked questions.
  • a live arena density map, rendered as a heatmap of concourse crowding, refreshed against a simulated sensor feed.
  • a live crowd status paired with a concierge advisory -selecting a stadium prompts the assistant to generate a brief, legible operational recommendation, such as opening an overflow line at a given gate, rather than a bare percentage.
  • transit directions, reporting shuttle and transit wait times with the texture of a real dispatch board.
  • a sustainability hub, surfacing the nearest recycling point and water refill station to discourage single-use plastic.
  • multilingual assistance, tracking active translators across a dozen languages, so a fan may pose a question in spanish, portuguese, or french and receive a reply in kind.
  • a contrast mode, offered as a single toggle for higher contrast and enlarged text.

the dashboard also keeps a record of its own performance, surfacing a live fan satisfaction score and its trend -treating the fan experience as a metric to be actively managed, not merely an impression to be assumed.

the architecture beneath the assistant

the core resides in backend/genai_client.py: a single, reusable client wrapping the anthropic claude api. two design choices are worth dwelling on.

first, one persona architecture serving many system prompts. backend/personas.py defines a shared set of governing rules -be concise, never invent specifics, account for accessibility needs and time remaining until kickoff, and reply in the user’s own language -and layers persona-specific priorities atop these for fans, volunteers, organizers, and venue staff. the same underlying reasoning answers “where is the nearest accessible restroom” for a fan and “which zone requires reinforcement” for an operations lead.

second, a deliberate and graceful degradation. should no api key be configured, or should a live call fail or time out, the assistant falls back to a deterministic, rule-based mode rather than faltering or stalling. this is a modest detail with an outsized consequence: it is the difference between a demonstration that survives an unreliable connection and one that does not.

crowd density itself is not generated by the model at all -it is simulated deterministically per stadium, zone, and minute, so the figures remain stable and testable. generative reasoning is reserved for the task that genuinely benefits from it: translating “zone three is at eighty-seven percent” into a clear, prioritized recommendation a person can act upon within seconds.

built with accessibility and security as first principles, not afterthoughts

a handful of decisions merit particular attention.

accessibility need is treated as a field of context, not a cosmetic setting. whether a person requires a wheelchair-accessible route, contends with a visual impairment, or needs plain, unadorned language, this alters what the assistant actually says, not merely how the interface appears.

crowd levels are never conveyed by color alone. status is consistently paired with explicit text so the information remains legible to those who cannot rely on color to distinguish it.

api keys remain server-side, without exception. they are read from environment variables, never logged, and never returned within a response -a guarantee verified by dedicated security tests.

rate limiting protects the costlier endpoints from abuse, with a candid note in the documentation that the present in-memory limiter suits a single process and is not, as it stands, a production-scale solution.

the stack

python and fastapi on the backend; plain html, css, and javascript on the frontend, deliberately free of a heavy framework build step, so that anyone may clone the repository and have it running with a single uvicorn command. by the repository’s own language breakdown, this amounts to roughly forty-eight percent python, twenty-six percent html, twenty-two percent javascript, and a modest remainder of css.

an invitation

the project is open source and live at present:

explore the command center at fifa-26-fawn.vercel.app read the code, the architectural notes, and the assumptions log at github.com/janvis11/fifa-26

for anyone building something comparable for a live event, the principle worth borrowing is this: resist the temptation to append generative ai to a feature list. choose the one person whose day you are genuinely trying to improve, design the assistant around their actual questions, and allow everything else -the operations dashboard, the multilingual support, the sustainability nudges-to grow outward from that same core, rather than existing as separate, bolted-on modules.

tags: #promptwars #hack2skill #genai #webdev #buildinpublic


메타데이터
post_id
6bd0abc56c8d
slug
meet-fan-journey-concierge-a-genai-command-center-for-the-fifa-world-cup-2026-6bd0abc56c8d
url
https://medium.com/@janvisingh6211/meet-fan-journey-concierge-a-genai-command-center-for-the-fifa-world-cup-2026-6bd0abc56c8d
canonical_url
https://medium.com/@janvisingh6211/meet-fan-journey-concierge-a-genai-command-center-for-the-fifa-world-cup-2026-6bd0abc56c8d
author_url
https://medium.com/@janvisingh6211
status
ok
fetched_at
2026-07-14 19:39:34