Inspiration
Transit planning is still too slow and too opaque for most people. We wanted a tool where you can draw an idea, immediately see who it serves, and debate tradeoffs in the open with real city data.
What it does
- Visualize existing TTC lines and stops in a 3D-enabled Mapbox map.
- Draw planning boundaries or directly select neighbourhoods/stations as constraints.
- View live population density and traffic overlays
- Open neighbourhood insight cards with computed population, traffic level, and Street View context.
- Create custom lines, add/move/delete stops, add transfers between lines, and undo edits.
Tech Stack
Frontend: Next.js + React + TypeScript / Mapping: Mapbox GL + Mapbox Draw / 3D Landing Page: Three.js + React Three Fiber / Backend APIs: Next.js API routes, Backboard.io / Data: PostgreSQL + PostGIS + Supabase / Google Street View API
Challenges we ran into
- Integrating multiple geospatial layers (routes, neighbourhood polygons, traffic, population) with smooth interactivity.
- Keeping map performance high while supporting live editing, drag-to-reposition stops, and dynamic source/layer updates.
- Designing reliable SSE streaming for multi-agent AI output and synchronized map previews.
- Turning complex PostGIS query results into concise context the AI could reason over.
- Balancing technical planning metrics with understandable UX for non-experts.
Accomplishments that we're proud of
- A full transit design interface where users can draw and modify subway lines directly on a live city map
- Real time overlays of population density and traffic data to support planning decisions
- A clean and responsive geospatial interface built on a modern full stack architecture
What we learned
- Geospatial UX quality depends as much on data modeling and query strategy as frontend polish.
- Streaming architecture (SSE + incremental UI state) is critical for trust in AI-assisted planning tools.
- Planning tools need both metrics and narrative: users want numbers, but also understandable rationale and tradeoff framing.
What's next for Transit Planner
- Expand planning to streetcars, buses and non-subway lines
- Simulating ridership demand and travel time improvements
- Allowing communities to propose and vote on transit ideas
- Adding additional city datasets such as housing growth and employment hubs
Built With
- next.js
- supabase


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