My city's public bus system, Metrobus, has a website where users can find the bus they are looking for and check its route and its current location. I was finding the user interface difficult to use, especially when using a mobile device at the bus stop, wondering where my bus might be.
So I decided to build my own tracking app for the city's busses
I found an API on the Metrobus website which returned some HTML. With a little webscraping, the GPS coordinates for each bus can be retrieved from this HTML.
I then built my own API which would retrieve these coordinates and return them as JSON. I also included a small cache system for the data, as to not send too much traffic to the Metrobus API.
Using this, I built my own web page with an instance of Google Maps and added markers for each bus. This web page provides a live feed of each bus all in one convenient location.