Not for submission, but would love feedback
Just realized that this hackathon is only open to student, but I just graduated. Just submitting here for to get feedback.
Inspiration
Fans either over-arrive and burn an hour in their seat, or under-arrive and miss kickoff in a security line. There's no fixed rule — the right time depends on match-day traffic, crowd bunching, and gate throughput. With the FIFA World Cup 2026 coming, we wanted to actually compute the answer.
What it does
Tells you exactly when to leave home so you arrive as late as comfortably possible — skipping the security surge, still catching the moment you care about. Short wizard: pick a match → share your starting point (live location, address, or rough distance) → pick the moment you can't miss → travel mode → a "chill ↔ cut-it-close" slider. You get: a "leave home by" time, a full timeline, the security-wait curve with your plan marked, a sensitivity readout ("leave 20 min later → +X min in line"), and a venue map.
How we built it
Next.js 16 + TypeScript + Tailwind v4, serverless. Recharts for the wait curve, Leaflet + OpenStreetMap for the map. The core is a mechanistic model, not ML. On a time axis τ = minutes to kickoff:
Crowd curve — truncated normal peaking ~30 min pre-kickoff, scaled to expected attendance. Security queue — deterministic fluid queue: queue = max(0, queue + arrivals − gate_capacity), gates = lanes × ~11–12 people/lane/min. Traffic — free-flow time × match-day surge × time-of-day baseline × weather, plus parking and walk. Optimizer — sweeps every arrival minute, minimizes wait + early_penalty·earliness + late_penalty·lateness + hard_penalty·missed_kickoff. The slider reshapes those weights.
Algorithm at the core, data at the perimeter. The engine is pure and never fetches. Real data enters through thin API routes — Nominatim (geocode), TomTom → OSRM → straight-line (routing), Open-Meteo (weather) — each with graceful fallback.
Challenges we ran into
There is no per-fan "arrived at T, waited W minutes" dataset. Nobody publishes it. The tempting move was to synthesize one and train on it. We refused — and solved it as queueing engineering with research-informed, citable, tunable parameters instead.
Also, setting up the MCP tool for the chatbot has been a nightmare. I think the model we chose for this project was too small, or we've given it too much context, and it can't make a correct decision anymore.
Accomplishments that we're proud of
Actually participating in the hackathon. It was a lot of fun!
What's next for Arrive Wise
Improving the MCP tool, as well as getting better data from partnerships (so that we can use their data through API calls)
Built With
- featherless.ai
- leaflet.js
- nextjs
- recharts
- typescript
Log in or sign up for Devpost to join the conversation.