Transit (transit.nambrot.com) is a web application that fetches schedule and in some cases real-time information from your favorite transit agencies so that you no longer have to stand in the rain wondering where ths next bus is. You can customize which stops and routes to display and use it on your phone or as a dashboard in your office.
After doing my annual move, I now find myself in a situation where walking to the subway is just far enough that I'm considering taking the bus to the subway station itself. However, since the bus basically never comes on schedule, it is effectively a game of chance. While my local transit agency, the MBTA, does have solid applications that let me check the status of the next bus, I was curious how freely available the data is and how much work it would be to build something specifically for my situation.
To my delight, I learned that Google has rallied to create the GTFS and then the GTFS-realtime standard that looks quite well thought out and seems to have wide-spread support. While companies like Transitscreen exist, I was suprised that there aren't more projects taking advantage of that universal access to the data, so I decided to try.
Currently, you see a very first rough version built with Elixir and Phoenix. The API is built on top of GraphQL with the excellent absinthe package. The community was extremely helpful. The client is done with the helm of Blueprint and Apollo. All in all it was a insightful and pleasurable experience. I have to admit that I was more skeptical of GraphQL at first but ended up a fan, only via the very thoughful tools that absinthe provides with Ecto, the "ORM" of Elixir.