While living in the DC metro, I frequently rode Metrorail, Metrobus, and other regional buses. Since transit around the DMV is operated by different entities, I often had to switch between multiple websites while commuting. Additionally, while WMATA's busETA has a map on desktop, on mobile it only shows a list of stops. ART RealTime similarly does not have a map and only shows distance to a specified stop. In March 2024, I made an R Shiny Markdown app that shows the location of multiple trains and buses I rode frequently using protocol buffers from the WMATA/ART APIs. (Note that due to the amount of data, the website may time out while loading.) The website has maps, calculates great-circle distance between buses and specified stops, and shows current WMATA alerts. I initially hard-coded specific routes and stops, then updated the app to allow the user to select a route. Updating the app also accounted for WMATA's updated bus networks in summer 2025. Mousing over each vehicle shows vehicle number, whether it's in motion, nearest stop, and crowding.
Legacy map with defined stops and estimated distance:
New maps with changeable routes:
Close