GBFS Viewer is a very simple tool that uses GBFS feeds to provide a realtime map of multiple scooter- and bike-share systems. The tool is adaptable to any City and feed provider (as long as their GBFS follows the official specification), but this instance has been created for operators in Providence, RI.
The tool also counts vehicles per geographic zone specified for regulatory distribution requirements.
This project was inspired by a conversation with a member of the Citys planning department about the analytic challenges and opportunities associated with micromobility. A purpose of a GBFS feed is to make micromobility data available to the general public. The structure of GBFS is technical in nature: it’s all JSON. While this is very helpful for developers, it’s useless to the majority of the public.
I knew that most people who would want or need to do advanced geospatial analysis of this data either worked for the City and had access to non-public MDS APIs or, like me, could deal with JSON. While there are many ways this data could be made useful to and usable by the public, a map was the most intuitive. While geographic illiteracy sadly remains an issue in Providence, any type of location-based information can most easily be understood in this form. Therefore, I saw the provision of this information to the public (without requiring the installation of any of the company’s software) as a reasonable and useful public service.
On the recommendation of my interlocutor, I dove into Leaflet for this assignment. For the most part, the interface is one big Leaflet map, extended with some custom buttons to refresh data from the GBFS feeds. The zone counting mentioned above was added after the basic functionality was implemented. QGIS was used to create zone shapes from RIGIS data, and Turf.js is used to count the number of vehicles in each zone.
GBFS Viewer is under active (if gradual) development. I intend to create a slightly more advanced version, which can display isochrones for all vehicles simultaneously.