April 2026
WheresMyBus
I recently started commuting by bus and saw an opportunity to improve the experience using real-time data. After discovering that BC Transit offers a (limited) public API, I built a web application that visualizes live transit activity across the Victoria Regional Transit system.
The app provides real-time tracking for every route, including bus locations, delays, service alerts, and arrival updates. It transforms raw transit data into a clear, accessible interface, making it easier for riders to understand exactly what’s happening across the network at any given moment.

Build Process
This project was designed and built end-to-end using a modern web stack, including Next.js 16 (App Router), TypeScript, and Tailwind CSS, with Leaflet on top of OpenStreetMap powering the interactive map layer. Real-time transit data is ingested from BC Transit’s GTFS-realtime feed using Protocol Buffers, enabling efficient parsing and frequent updates of vehicle positions, stop data, and service alerts.
The entire application was built independently using Claude Code to drive implementation and explore ideas. Rather than relying on prebuilt templates or boilerplate-heavy solutions, I utilized AI-driven development to rapidly iterate on features, refine the user experience, and ultimately bring a product vision to life.
Features

Live Bus Tracking
Bus positions are updated every 10–15 seconds using BC Transit’s GTFS-realtime feed, enhanced with smooth interpolated animations to reduce visual jumps and maintain a fluid tracking experience. Rather than abruptly refreshing markers, each update is transitioned to create a more natural sense of movement, improving readability and making it easier for users to interpret vehicle locations and progression at a glance.

Interactive Bus Stop Map
Selecting a stop reveals a detailed, context-aware panel with real-time arrival information for upcoming buses. The interface highlights key details such as route numbers, estimated arrival times, and stop metadata, all organized for quick scanning. Emphasis is placed on clarity and hierarchy, allowing users to understand upcoming departures at a glance. Additional actions, such as pinning a stop, enable users to quickly return to frequently used locations.

Detailed Service Alerts
The service alerts system surfaces real-time disruptions across the transit network, including detours, stop closures, and cancellations. Each alert is clearly categorized and paired with relevant routes and stop IDs, allowing users to quickly understand the scope and impact of an issue. Information is structured for fast scanning, turning typically dense transit updates into concise, actionable insights that help riders adapt their plans with minimal friction.