No release in over 3 years
There's a lot of open issues
Ruby classes generated from the GTFS-realtime protocol buffer specification.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 0
>= 0

Runtime

>= 3.0
 Project Readme

gtfs-realtime-bindings Join the MobilityData chat

Language bindings generated from the GTFS Realtime protocol buffer spec for popular languages.

Introduction

GTFS Realtime is a data format for communicating real-time information about public transit systems. GTFS Realtime data is encoded and decoded using Protocol Buffers, a compact binary representation designed for fast and efficient processing. The data schema itself is defined in gtfs-realtime.proto.

To work with GTFS Realtime data, a developer would typically use the gtfs-realtime.proto schema to generate classes in the programming language of their choice. These classes can then be used for constructing GTFS-realtime data model objects and serializing them as binary data or, in the reverse direction, parsing binary data into data model objects.

Because generating GTFS Realtime data model classes from the gtfs-realtime.proto schema is such a common task, but also one that sometimes causes confusion for first-time developers, this project aims to provide pre-generated GTFS Realtime language bindings for a number of the most popular programming languages. Where possible, these language bindings will be published as packages to facilitate their use in other projects.

Supported Languages

Other Languages

We don't provide generated code for C++, use the official protoc compiler for that (from here or here)

Are we missing your favorite language? Consider contributing:

  1. Read CONTRIBUTING.md.
  2. Open a pull request with your language of choice. Please include update instructions (ideally, scripts). Also, provide packaging suitable for the language ecosystem.

Project History

This project was originally created by Google - MobilityData started to maintain the project in early 2019.

Older versions of the bindings libraries are still published under Google's name. See the documentation for each language here to find the last version published by Google.