Your first time on this page? Allow me to give some explanations.
Awesome Transit
Community list of transit APIs, apps, datasets, research, and software
Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.
Thank you CUTR-at-USF & contributors
View Topic on GitHub:
CUTR-at-USF/awesome-transit
Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.
Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.
Getting started
A GTFS feed is a group of text files that contains infrequently changing transit data, like stops, routes, trips, and other schedule data. Transit agencies typically update their GTFS feed every few months.
GTFS Realtime consists of three binary files that contain realtime vehicle positions, realtime arrival information, and service alerts. Transit agencies typically update these files every minute.
former TransitFeeds) - List of GTFS/GTFS-realtime data feeds from around the world. If you're trying to get realtime data for some agency, this is a good place to start.
A free, online, self-paced course for learning about GTFS and GTFS-realtime.
A series of lessons to help people utilize open transit data.
stand-alone Docker image is available on GitHub as well as a hosted/no-install version of the Jupyter notebook.
Community
A community wiki for transit planners. Like this repo, but better.
NYC-based meetup for those interested in this repo. Speaker list includes many contributors to this repo.
3rd party GTFS URL directories
Community editable list of many transit agency GTFS datasets. Also provides an API to access the data as JSON/GeoJSON and a playground to try out the data.
former TransitFeeds) - List of GTFS/GTFS-realtime data feeds from around the world. If you're trying to get realtime data for some agency, this is a good place to start.
Formerly the definitive directory of GTFS feed URLs. Shutdown in 2016. But 93 GB of data from 2008 to 2016 is available upon request.
Transit agency data archives
Historical transit data for Austin including vehicle positions, ridership, and schedules.
National government datasets
List of european long-distance transport operators, available API endpoints, GTFS feeds and client modules.
Information and statistics on the transit systems of the United States, run by the Federal Transit Administration.
Proprietary (non-standard) vendor APIs
REST API for aggregated transit data for the United Kingdom. Fee-based access.
REST API for real-time vehicle, route, stop, and arrival data for over 60 transit systems in the United States that have purchased TransLoc's AVL hardware and software.
REST API for real-time vehicle, route, stop, and arrival data for agencies that have puchased NextBus's hardware and/or software.
REST API for journey planning, stop schedules, isocrhons and lot more on US and EU. Navitia is the opensource engine behind the live API.
REST API for aggregated bikeshare data from around the world. Powered by pyBikes.
Propriety public transport management software by HaCon (list of endpoints)
Crowdsourced transit data
A collaborative platform for mapping transit systems, with an emphasis on their historical evolution.
The collaborative platform for mapping the world, including transport, transit, and routing data.
Software for Creating APIs
GTFS API Server, written in Rust
The open source software to build cool stuff with locomotion
bike sharing + python = pybikes
Expose a HAFAS client via an HTTP REST API.
Open source routing engine for OpenStreetMap. Use it as Java library or server.
A Java app that consumes GTFS and GTFS-Realtime (along with other formats) and turns them into an easy to use REST API.
An open source platform for multi-modal and multi-agency journey planning, as well as returning information about a multi-modal graph (using data sources such as GTFS and OpenStreetMap).
Java application that can consume raw vehicle positions and generate prediction times in formats such as GTFS-realtime. Formerly known as "Transitime".
An open-source, scalable intermodal route planning engine, which allows clients to execute the route planning algorithm (as opposed to the server). Uses GTFS data.
Provides public transportation data for North America in a single, integrated call and response format. The data is provided in stream-parsable XML and JSON formats. Open-source on Google Code. Hosted version at www.transitcast.com requires payment.
Agency Tools
Pinpoints the nearest authorized restroom for bus operator and field staff, using GPS and on-screen map.
AC Transit Training and Education Department (TED) application
Public transit ticketing system for customer issues and feedback with: inter-departmental routing with notifications, department/person assigments, simple workflow, ticket searching, pre-canned reports, daily reminders and more.
A dispatching and ride coordination tool.
a web-based software tool developed for the visualization, analysis, and reporting of regional and statewide transit networks in the state of Oregon
An open-source asset management platform for public transportation agencies. Open-source on Github.
GitHub](https://github.com/metrotransit/route-trends)) - An R Shiny app to ingest ridership time series, and return seasonal, trend, and residual components according to STL methodology and forecasts including uncertainty based on those components. Sponsored by Metro Transit (Minneapolis-St. Paul).
TBEST (Transit Boardings Estimation and Simulation Tool) is an effort to develop a multi-faceted GIS-based modeling, planning and analysis tool which integrates socio-economic, land use, and transit network data into a platform for scenario-based transit ridership estimation and analysis. Funded by the Florida Department of Transportation. Free to use but not open-source.
Hardware
Web Apps
GWT client for OpenTripPlanner
OTP Javascript Client & Data Bindings
React component library, which can be used to build trip planner webapps.
Web-based application for managing real-time transit service alerts.
API and Map app that transform, store, and expose HRT Bus data through a RESTful HTTP endpoint. Python, Heroku, @bschoenfeld
The server and client used in transit map simulations like swisstrains.ch
Transit data visualization
Applications for tracking moving assets on a live map
Custom realtime displays of all local transportation choices
Realtime map of Austin's (CapMetro) public transit. Has no server/backend dependency at all and runs completely on GitHub pages.
Real-time Transit Tracking for Iowa City, Coralville and the University of Iowa. Awesome because it combines three disparate transit systems into one UI.
An interactive transportation planning game that lets players alter the NYC subway system to their heart's content.
Really polished webapp with trip planner and route status for over 30 of cities.
Mobile friendly web app which consumes GTFS feeds and displays both live and scheduled trips for stops. Launched with MBTA, YRT/Viva and Maryland MTA.
A virtual “trip aggregator” that assembles information on a wide variety of available modes: public transit, private, rail, rideshare, carpool, volunteer, paratransit, and walking and biking. Open-source on Github.
Realtime vehicle position and arrivals and departure information for the Washington, D.C. region's WMATA Metrorail and Metrobus systems. WebApp, Android, and iOS apps avaliable.
Realtime vehicle position for Greater Montreal & Toronto, Canada
A free web-based application to help you create GTFS files. Maintained by the National Rural Transit Assistance Program (RTAP).
A collaborative platform for mapping transit systems, with an emphasis on their historical evolution.
Native Apps (open source)
An Android app for multi-modal trip planning and navigation using any OpenTripPlanner server.
An iOS app that gives users the ability to plan trip itineraries powered by OpenTripPlanner.
Free Public Transport Assistant without Ads or Tracking
Trufi - A Flutter app for Public Transportation
source code)*](https://github.com/OneBusAway/onebusaway-android), Fire Phone (source code), iOS (source code), Windows Phone (source code), Windows 8 (source code), Google Glass GDK (source code), Alexa skill (source code)
An Android app that provides trip planning, schedules, live departure times, and disruption information for transport authorities in Europe and beyond.
Native Apps (closed source)
Visualizations
Animating scheduled transit trips using the Transitland API and Processing
Interactive tools for GTFS data visualization and analysis
The Toronto Transit Explorer app visualizes transit, biking and walking accessibility across the city of Toronto.
Compiles Transportation Speed and Ridership Data
a web-based software tool developed for the visualization, analysis, and reporting of regional and statewide transit networks in the state of Oregon
Interactive graphs that show how people use Boston's subway system.
Co-creative Planning of Transit Corridors using Accessibility-Based Stakeholder Engagement (shows route scenarios using OpenTripPlanner Analyst).
Visualizes vehicles moving based on static GTFS data (and sometimes realtime data). Supports over 260 cities. Github account for geOps organization is here.
Frequency visualization of subways and buses in New York City built using Transitland.
An online on-time performance reporing & drill down tool using GTFS.
Interactive GTFS route and schedule animation (for U.S. cities) using Mapbox GL JS, Deck.gl and Transitland. Github repository here.
Shows areas you can reach with public transport in a given time. Open-source on GitHub, live at https://www.mapnificent.net/.
GTFS
A GTFS feed is a group of text files that contains infrequently changing transit data, like stops, routes, trips, and other schedule data. Transit agencies typically update their GTFS feed every few months.
C
C library to read GTFS feeds
RRRR rapid real-time routing
Tools for working with GTFS public transit data in ArcGIS
.NET implementation of a General Transit Feed Specification (GTFS) feed parser.
C++
C++17 header-only library for reading and writing GTFS 🌍
Go
A GTFS parsing library for Go
Java
Parses a GTFS feed into an SQL database
A Java-based library for reading, writing, and transforming public transit data in the GTFS format, including database support.
Routing engine for multimodal (transit/bike/walk/car) networks with a particular focus on public transit.
Convert an sqlite file generated with "GtfsToSql" back to a zipped GTFS file
JavaScript
A model of the static GTFS using sequelize.
Utilities to process GTFS data sets.
Yet another tool to process GTFS using PostgreSQL.
Import GTFS transit data into SQLite and query routes, stops, times, fares and more.
PostgreSQL
PostgreSQL schemas for GTFS feeds.
Python
Tools for working with GTFS public transit data in ArcGIS
GTFS ORM using SQLAlchemy
An open source library in python for reading GTFS files and computing various stats and indicators about Public Transport networks
Repository-like tool to manage and update a huge number of GTFS feeds
Public transport network analysis using Python 🚊🚇🚃🚌🛳️🚡🚠🚞
A Python 3.6+ tool kit for analyzing General Transit Feed Specification (GTFS) data
A Python 3.6+ tool kit for analyzing General Transit Feed Specification (GTFS) data
A Python 3.5+ library to build GTFS feeds from basic route information
Python library for reading and writing GTFS feeds
Django app to import and export General Transit Feed Specification (GTFS)
A fast, forgiving GTFS reader built on pandas DataFrames
R
A transit (GTFS) file reader for R
Ruby
Converts a GTFS dataset into a SQLite DB + GeoJSONs / KMLs
GTFS Converters
SYNTHESE public transportation software
Turn OpenStreetMap data and schedule information into GTFS
Synchronizes public transportation data in GTFS format with OpenStreetMap.org
A Java application that takes a GTFS file and produces a Barefoot map file
A simple tool to extract GTFS feed from OpenStreetMap.
Rectify transloc-specific stop ids with nearby ones in a GTFS feed
Hafas2GTFS converter, optimized for SBB HAFAS feeds
[work in progress] – Generate GTFS dumps from HAFAS endpoints.
NOTE: deprecated. see tidytransit. General Transit - Simple Features
Managing transit data with Rust
Libraries and tools for working with transit data conforming to the VDV specification.
Generate geoJSON of transit route data from a GTFS file.
Compute transit service area from static GTFS.
Converts French-Transmodel, SIRI, NETeX. See Chouette.mobi website for more info.
GTFS Data Collection and Maintenance Tools
bus-router creates a shapes.txt file for stop_times.txt using the Google Maps Directions API.
A web-based GTFS editing framework. This project is DEPRECATED, see conveyal/datatools-ui for current version.
Vagrantfile for gtfs-editor
GUI interface for creating, editing, exporting of static GTFS data for a public transit authority
Core application for IBI's transit data tools suite.
Precise map-matching for public transit feeds. Generates high-quality GTFS shapes from OSM data.
UI tool to help build the internal structure of stations (based on GTFS standard)
An open source web and mobile application for collecting transit data. Use it to create GTFS feeds, capture passenger counts or generate GIS datasets.
An entirely browser-based tool to view GTFS feeds. Use it to view routes, stops, timetables, etc.
A free web-based application to help you create GTFS files. Maintained by the National Rural Transit Assistance Program (RTAP).
GTFS Analysis Tools
peartree: A library for converting transit data into a directed graph for sketch network analysis.
Package for obtaining, validating, viewing, and storing GTFS (transit) data
R package for working with the General Transit Feed Specification (GTFS)
An R package for constructing and modelling a transit network in real time to obtain vehicle ETAs
Inference of probabilistic schedules from empirical data about transit vehicles.
GTFS Timetable Publishing Tools
Build human readable transit timetables as HTML or PDF from GTFS.
GTFS Validators
A Python library for reading, validating, and writing transit schedule information in the GTFS format.
A Java framework for GTFS validation and statistics.
A library for loading and saving GTFS feeds of arbitrary size with disk-backed storage
Public transport data in GTFS format with schemas, a data package and tests
Canonical GTFS Validator project for schedule (static) files from a zip archive
GTFSVTOR - Fast GTFS validator
GTFS validator
A web-based GTFS validator that runs both feedValidator and gtfs-validator on uploaded GTFS files.
GTFS Realtime
Automatically generated documentation for GTFS-realtime, generated from the official GTFS-realtime protocol buffer specification and including some extensions.
GTFS Realtime Libraries & Demo Apps
Language bindings generated from the GTFS-realtime protocol buffer spec for popular languages.
A Java library to help in implementing GTFS-realtime data sources.
A simple example project that shows how to create a GTFS-realtime alerts feed.
Web-based application for managing real-time transit service alerts.
A quickstart project demonstrating how to produce GTFS-realtime trip updates and vehicle positions feeds.
A visualizer for GTFS-realtime transit data.
GTFS Realtime Validators
Java-based tool that validates General Transit Feed Specification (GTFS)-realtime feeds
GTFS Realtime (and Other Real-time API) Archival Tools
Parses a GTFS-RealTime feed into an SQL database
GTFSrDB is a tool to archive gtfs-realtime data to a database.
Collect real-time transit data and process it into a retroactive GTFS 'schedule' which can be used for routing/analysis
GTFS Realtime Convertors
Produce GTFS-realtime data from a SIRI data source.
Desktop application that retrieves AVL data from Hillsborough Area Regional Transit (HART)'s AVL system and produces Trip Updates and Vehicle Positions files in GTFS-realtime format.
Produce GTFS-realtime data from a NextBus API data source.
Desktop application that retrieves AVL data from the USF Bull Runner's AVL system and produces Trip Updates and Vehicle Positions files in GTFS-realtime format.
GTFS-realtime StopTimeUpdate, VehiclePosition, and Alert feeds for WMATA
GTFS-realtime for SEPTA TrainView and TransitView APIs.
GTFS-realtime for CTA Train Tracker
A tool to grab AVL data from the database and push it to the ddot-updates service
Database trigger that pushes real time event notifications via http
Support for Sound Transit realtime data streams.
My project for the National Day of Civic Hacking. This is to read and standardize the data feeds of public transit systems.
A set of open source Python libraries for translating custom real-time transit data to the GTFS-rt format
To Transform Transloc Real Time API to the GTFS RealTime Format
Format HAFAS data as GTFS Realtime.
Simple API for public transport realtime data
Java application that can consume raw vehicle positions and generate prediction times in formats such as GTFS-realtime. Formerly known as "Transitime".
GTFS Realtime Utilities
Command-line dumper for GTFS-realtime feeds
Utility to print out GTFS-Realtime
Read a GTFS Realtime feed from stdin, print human-readable or as JSON.
Munin plugin to monitor a GTFS-realtime data source.
Nagios plugin to monitor a GTFS-realtime data source.
A web service that serves up GTFS-rt data in the protocol buffer format for testing.
Transform a differential GTFS Realtime feed into a full dataset/dump.
an admin tool for managing GTFS-RT alerts
Serves GTFS-RT feed created from editable JSON
SIRI
Parent module for all OneBusAway projects with common configuration information.
Java Classes for Siri 2.0
Produce GTFS-realtime data from a SIRI data source.
Libraries and tools for King County Metro transit data.
An Android library for interacting with a RESTful SIRI interface for real-time transit data, such as that currently deployed by MTA BusTime API
Support for the SIRI v 1.3 api for real-time transit data, in the form of Plain Old Java Objects (POJOSs), primarily created for use on the Android platform.
Simple validator for SIRI 2.0
Ara is a golang server for real-time public transport data exchange, using the SIRI protocol.
Automatically generated documentation from the (incredibly well) annotated SIRI 2.0 Schema Definition.
Other multimodal data formats
A data format that models flexible public transportation services as an extension to GTFS
Documentation for the General Bikeshare Feed Specification, a standardized data feed for shared mobility system availability
Validate GBFS endpoint
Legacy Repository for the R Package {gbfs}
Proposal for a standard format for specifying Managed and Tolled Lanes
A GTFS-based data transit network data standard suitable for dynamic transit modeling.
Demand format suitable for dynamic network models
Transit and passenger path data standards / for assignment output
Report of GTFS performance compared to schedule.
A data standard to enable communication between mobility companies and local governments.
Open Matrix (OMX)
General Modeling Network Specification
A general purpose XML format designed for the exchange of complex static transport data among distributed systems managed by the CEN standards process.
Transit ITS Data Exchange Specification (TIDES) is a proposed effort to create standard data structures, APIs, and data management tools for historical transit ITS data including AVL, APC and AFC Data.
Appears to be working on a data standard for car share and transportation network companies (TNCs) / rideshare.
Formed by the International Parking Institute (IPI), the British Parking Association (BPA), and the European Parking Association (EPA), APDS is a not-for-profit organization with the mission to develop, promote, manage, and maintain a uniform global standard that will allow organizations to share parking data across platforms worldwide. APDS Version 1.0 documents are here.
A set of open documents and test suite that defines a MaaS-compatible API (e.g., a MaaS Transport Service Provider Booking API).
The objective of this research is to develop technical specifications for transactional data for entities involved in the provision of demand-responsive transportation. Expected completion date is late 2018.
The objective of this research is to develop standards and/or guidance to be used and adopted by the transportation community in collecting, managing, and sharing static and real-time data for transportation planning and operations.
A planned data specification for sharing travel demand model networks.
On-line courses
A free, online, self-paced course for learning about GTFS and GTFS-realtime.
A series of lessons to help people utilize open transit data.
stand-alone Docker image is available on GitHub as well as a hosted/no-install version of the Jupyter notebook.
Blog posts
Data and code for "When (ish) is My Bus? User-centered Visualizations of Uncertainty in Everyday, Mobile Predictive Systems" (CHI 2016)
Discussion of options for transforming legacy AVL system data into the GTFS-realtime format.
Discusses some of the challenges of an open data format like GTFS and the GTFS Best Practices that were launched in early 2017 to help address data quality.
Discuss the shortfalls in GTFS-realtime v1.0 and the improvements in v2.0.
Provides a general introduction to technology used to track vehicles.
A collection of transportation-related data and tools for the San Francisco Bay Area and other cities in North America, originally collected and discussed at a 2018 Transit Week Event at ARUP in San Francisco.
Academic papers
Experiment in Chicago, IL showed modest increase in ridership when riders had access to real-time info via text message or email.
Paper attempts to answr the question of "how do we communicate uncertainty in transit predictions?" Explains the problem, existing solutions and designs a better interface for letting users know when to arrive at the bus stop.
Experiments in Seattl,e WA showed that riders perceived shorter bus wait times when they had access to real-time info via mobile apps.
Controlled experiment in Tampa, FL showed that riders with access to real-time info via mobile apps perceived nearly 2 minute reduction in wait times compared to riders without real-time info. Riders with real-time info also had decreases in anxiety and frustration and better reception of agency.
Experiment in NYC showed that ridership increased on long routes when real-time info was made available to riders.
Government reports
APTA's discussion of the benefits and challenges of open transit data (a short summary of the below TCRP report).
A comprehensive report looking at the benefits and challenges of open transit data.
The objective of this research is to develop technical specifications for transactional data for entities involved in the provision of demand-responsive transportation. Expected completion date is late 2018.