Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

The OneBusAway Application Suite Java CI with Maven Join the OneBusAway chat

A project of the non-profit Open Transit Software Foundation!

The OneBusAway application suite's primary function is to share real-time public transit information with riders across a variety of interfaces:

Watch the YouTube video for more information.

Getting Started

Here are the high-level steps you'll need to take to launch the OneBusAway mobile apps in your area:

  1. Get your schedule transit data in the GTFS format
  2. Have an AVL system that produces arrival estimates (Note: we're working removing this requirement - contact us if you're interested. Alternatively, you may be able to use other open-source projects, such as The Transit Clock, to go directly from raw vehicle locations to arrival times that are shared via GTFS-realtime and SIRI - this would replace Steps 2 and 3.)
  3. Implement a GTFS-realtime or SIRI real-time data feed (We also support other formats)
  4. Set up a OneBusAway server
  5. Do some quality-control testing of arrival times
  6. Request to be added as a OneBusAway region

See the multi-region page for more details.

Setting up a OneBusAway server

There are two options for setting up your own OneBusAway instance:



OneBusAway is used in a number of places:

Check out the full list on the OneBusAway Deployments page. Check out the main project page at


Code Repository

To browse the source online visit

To create a local copy of the repository, use the following command:

$ git clone git://

Developer Information

Contact Info

There are lots of ways to get in touch with us.