Eco Route — Recommended
Transit 6 + walk 3 + e-scooter 3 (last mile) · transfers: 1
24MIN
A simulated match-day dashboard and eco route planner that turns peak arrival chaos into faster, cheaper, lower-carbon decisions.
A simulated match-day operations console built around a single Toronto match window: gate queues swing from 6-min CLEAR to 30-min HEAVY, traffic on the Gardiner spikes, and 24,318 fans need a single, honest answer. Two screens, one source of truth — KPIs that match the scenario assumptions, a glowing traffic map with labeled road states, and a route planner that puts the eco option first and the car beside it, not below it.
Eco multimodal beat the car across every step of the door-to-gate chain — switching to transit 6 + walk 3 + scooter 3 bypassed the Gardiner congestion layer entirely. Verified against the simulated congestion map.
PRESTO-fare transit + shared scooter undercuts $18 parking + fuel for a solo fan. The route planner surfaces fare up front so cost is part of the decision, not a surprise at the gate.
Per-trip delta between solo driving and the eco multimodal stack. Modeled with standard transit / micro-mobility emission factors and rolled up to 3.42 t across the simulated match-day cohort.
Solo product designer covering research, design system, UX/UI, and the design-directed prototype build.
Figma · AI-assisted HTML/CSS implementation (design & prototyping human-led) · SVG data visualization · GitHub Pages
Simulated match-day ops dashboard + eco route planner for 16 host cities
EcoMove 2026 is a mobility-readiness platform for FIFA World Cup 2026 host cities: a simulated operations dashboard plus an eco route planner that turn static transit data into decisions fans and operators can act on. Designed end-to-end and shipped as a live prototype, from tokens to GitHub Pages. Toronto and BMO Field are the demonstration case (Match 14), and the method was checked at planning level against two US venues, MetLife and Lumen Field, to make sure it transfers.
Ten frames from the EcoMove 2026 prototype — the match-day command dashboard, live network map, eco route planner, transit pass and the design system behind it. Swipe or use the arrows to walk through the build.
Toronto // Live Match-Day Operations
Real-time congestion around BMO Field and the city's eco-transport response. Simulated match-day data refreshes every 5 seconds.
CO₂ Saved Today 🌱
3.42 t
▲ +12.4% vs Match 12 vs all-car baseline
modeled · upper-bound case
Transit Adoption 🚌
68%
of fans on green modes
scenario assumption
Active Eco-Fans ⚡
24,318
modeled
Congestion Index 🚦
7.2 /10
Heavy near Gate C
modeled
Line 1 headway shortened to 3 min 30 s
ES-4 shuttle dispatched from City Hall hub
+412 fans redeemed the Green Transit Pass
Gardiner Expy delay growing near Gate C
Fleet St dock restocked — 19 e-scooters added
🚗 One car trip to the stadium ≈ +4.2 kg CO₂ + parking risk.
🚇 The eco-route avoids 1.8 kg CO₂e vs driving per fan (modeled).
🎟️ Green-mode fans earn 2× Fan Points redeemable at fan zones.
Transit 6 + walk 3 + e-scooter 3 (last mile) · transfers: 1
24MIN
Dedicated match-day bus ES-4 · non-stop
20MIN
Via Gardiner Expy · includes parking queue
45MIN
One QR for transit + shuttle + docks. Scan at any gate.
Times include security gate wait at the selected match-clock state. Eco fare = bundled illustrative fare. The shuttle is faster but costs ~43% more and avoids 0.7 kg less CO₂e. Timeline is illustrative; segment durations are scenario parameters, not timetable values.
CO₂ Saved
3.42 t
▲ +12.4%
Watch the simulated match-day flow — from gate congestion to green navigation in three steps. Times below are scenario parameters for the Match 14 BMO Field window, not timetable values.
Choose your entry gate — simulated security waits shown across match clock.
Mega-events push millions of fans onto the same routes at the same hour. Stations pack, arterials clog, and security queues swing from a 6-min CLEAR to a 30-min HEAVY within minutes, while cities sit on static baseline data that fans can't act on in the moment.
In my Match 14 scenario (BMO Field, Toronto), gate queues shift with the match clock: 6-min CLEAR in quiet hours, 14-min MODERATE mid-afternoon, and 17 to 30-min HEAVY as kickoff approaches. The Gardiner Expy gets heavily congested, and the default car trip costs a fan 45 minutes, $18, and +4.2 kg CO₂e. A private car emits about 171 g CO₂ per fan-km on this corridor — versus 41 g for the express shuttle, 28 g for transit, and 0 g for bikes and scooters. The mode split on a typical match day lands around 32% private car, 34% transit, 18% e-shuttle, 12% bike or scooter, 4% walking. Cities have the baseline data; they don't have an actionable, in-the-moment decision surface.
7 semantic color tokens, 3 type families (Plus Jakarta Sans for headings, Inter for body, JetBrains Mono for live data), and 100% token coverage across both screens. With the system in place, the second screen was assembly instead of redesign, so nothing drifted visually at hackathon speed. Spacing, radius and motion are all token-driven (4 to 32px scale, 8/12/18 radius, micro 150ms to ambient 2.6–12s loop), and every component ships with default, hover, selected, and disabled states documented.
Simulated KPIs (3.42 t CO₂ saved as the upper-bound case, 68% transit adoption as a scenario assumption, 24,318 active fans, 7.2/10 congestion index, each labeled modeled on its tile), a glowing SVG traffic map with labeled road states ("GARDINER EXPY · HEAVY", "DUFFERIN · SLOW", "KING ST · FLOWING"), gate-level security waits that update across CLEAR / MODERATE / HEAVY (HEAVY at 17 min and above), and toggleable layers (transit lines, shuttle routes, micro-mobility, fan zones, traffic heatmap). Designed to stay useful at both ends of the match day: a quiet afternoon, and the peak window when every gate goes HEAVY. A live simulated network feed streams events — headway updates, shuttle dispatches, dock restocks, parking capacity warnings — so the operator can react in seconds, not hours.
3 options compared on time, CO₂e and cost, with the car included and never hidden, plus a multimodal timeline (transit 6, walk 3, scooter 3, an illustrative 12-min pre-gate sequence) and a QR Digital Fan Pass. No negative-carbon claims anywhere: the eco route shows +2.4 kg CO₂e and 1.8 kg avoided vs driving. Trip setup accepts origin, destination and arrival time; the eco-routing engine surfaces the lowest-footprint option first, with the fastest green option beside it, and the drive baseline always visible. Each card shows a timeline of segments, a fare total, a CO₂ figure, and the step-by-step leg with icons (walk, metro, e-scooter, shuttle, car, gate). The user can start navigation or add the Fan Pass to wallet with one tap.
I used AI as a coding partner to translate my Figma frames into dependency-free HTML/CSS. I wrote the specs, tokens and correction checklists, and every iteration had to match the design pixel-for-pixel. Shipped live on GitHub Pages during the hackathon, running on a simulated data layer with the backend endpoints documented for replacement. The codebase is three files (dashboard, planner, design system) sharing one stylesheet, one script, and one set of design tokens, so a future engineer can swap the simulated data layer for real APIs without touching the UI layer.
| Metric | Car Baseline | Eco Route | Impact |
|---|---|---|---|
| Door-to-gate time | 45 min | 24 min | −47% |
| Trip cost | $18.00 | $3.50 | −81% |
| CO₂e per fan | +4.2 kg CO₂e | +2.4 kg CO₂e | 1.8 kg avoided |
| Match-day scale | Baseline (72% car) | 38% car share (646 converted) | ~1.2 t avoided · $9.4K saved (3.42 t upper-bound) |
Real-time GTFS-Realtime feeds and a proper transferability pass across the 11 US host cities, with a pilot in Seattle or New York/NJ. Predictive bottleneck modeling so operators act before the crowd builds, post-match egress modeling, accessibility-aware routing and non-scooter alternatives, and a mobile PWA with a wallet-based Fan Pass, built to outlive the tournament as lasting urban infrastructure.