awesome-transit Awesome RSS

Community list of data standards, APIs, apps, tools, datasets, and research around open source technology of public transit.

Open technology provides an opportunity for various stakeholders to collaborate efforts to improve public transit.

Elements of open technology include:

  • Open standards
  • Open data
  • Open source software (both as consumer-facing apps like OpenTripPlanner and developer tools like the GTFS Validator)

This list is focused around the open technology ecosystem for public transportation. Included technologies may be open source themselves and/or rely on open standards and/or open data.

Have something to add or change? Open a pull request or issue at MobilityData/awesome-transit.


Table of Contents

GTFS Reference resources

  • GTFS.org official documentation site for the General Transit Feed Specification.

Courses

Consumer app guidance

Community

Places to ask questions and find other community resources.

Local and regional groups

Data

Places to access collections of GTFS and other transit and multimodal data

3rd party GTFS URL directories

  • The Mobility Database - JSON and CSV files on GitHub that is a repository of 2000+ mobility datasets across the world. Contains contents of OpenMobilityData/TransitFeeds.com.
  • Transitland - 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.
  • TransitData.io - A list of GTFS data in parts of Latin America. Must contact website maintainers directly to access feeds, as they're not publicly available.
  • OpenMobilityData (Deprecated) - List of GTFS and GTFS-RT feeds. Archives and validates the GTFS feeds and allows you to preview both GTFS and GTFS-RT through the browser. Formerly TransitFeeds.com. MobilityData announced it is end-of-life as of early 2022 with a shutdown date to be determined.

Transit agency data archives

  • CapMetrics - Historical vehicle locations for Austin's transit agency (CapMetro). Data is collected by capmetricsd, a Go daemon.

National government datasets

Proprietary (non-standard) vendor APIs

  • Transport API - REST API for aggregated transit data for the United Kingdom. Fee-based access.
  • NextBus API - REST API for real-time vehicle, route, stop, and arrival data for agencies that have puchased NextBus's hardware and/or software.
  • Navitia.io - REST API for journey planning, stop schedules, isochrones and lot more on US and EU. Navitia is the opensource engine behind the live API.
  • CityBikes - REST API for aggregated bikeshare data from around the world. Powered by pyBikes.
  • HAFAS – Propriety public transport management software by HaCon (list of endpoints)
  • Citymapper API - REST API for transit journey planning, realtime transit data and walk, cycle, scooter travel times.

Crowdsourced transit data

  • Citylines.co - A collaborative platform for mapping transit systems, with an emphasis on their historical evolution. The data can be downloaded as GeoJSON or CSV from citylines.co/data.
  • OpenStreetMap (OSM) - The collaborative platform for mapping the world, including transport, transit, and routing data.
  • GTFS-Hub - Community tested, probably quality/content enhanced, partially merged or filtered GTFS-feeds of (currently German) transport agencies. Maintained by MITFAHR|DE|ZENTRALE.

Sample GTFS and GTFS Realtime datasets used for software testing

Software for Creating APIs

Software that you can set up to provide an API to transit and multimodal data.

  • GraphHopper Routing Engine Open source routing engine for OpenStreetMap. Use it as Java library or server.
  • gtfs-server - A web server, written in Rust that uses PostGIS as a backend to serve GTFS data via a HTTP endpoint
  • hafas-rest-api – Expose a HAFAS endpoint as a REST API.
  • Linked Connections - 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.
  • Mobroute - Mobroute is a general purpose FOSS public transportation router (e.g. trip planner) Go library and CLI that works by directly ingesting timetable (GTFS) data from transit agencies themselves (sourced from the Mobility Database). It can be used to quickly run & test routing requests based on GTFS data on your device (via its CLI) or it can be embedded as a library to add GTFS routing to existing navigation apps.
  • MOTIS - Multi Objective Travel Information System, written in C++ and Java. Can consume schedule timetables in the GTFS or HAFAS format as well as real time information in the GTFS-RT (and RISML, a propriatary format at Deutsche Bahn) as input data. For pedestrian routing (handled by Per Pedes Routing) and car routing (handled by OSRM) OpenStreetMap data is used.
  • Navitia is the opensource engine behind the Navitia.io live API.
  • OneBusAway - A Java app that consumes GTFS and GTFS-Realtime (along with other formats) and turns them into an easy to use REST API.
  • OpenTripPlanner - 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).
  • pyBikes - Software powering CityBikes for worldwide bikeshare system info
  • Simple Transit Api - A simple way to get started with a GTFS api in Golang.
  • TransitClock - Java application that can consume raw vehicle positions and generate prediction times in formats such as GTFS-realtime. Formerly known as "Transitime".
  • Transitous - Community-run free and open public transport routing service.

Agency Tools

Tools for transit agencies. See also GTFS Data Collection and Maintenance Tools for tools specific to GTFS.

  • Remix - A webapp that lets transit agencies easily plan routes.
  • Next Train API - Serves any GTFS feed as a JSON API. Transit agencies and developers alike can deploy the open source code to their own Heroku server.
  • AC Transit RestroomFinder - 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 - This application supports the District's training operations for transportation and maintenance employees, primarily in the positions of Bus Operators and Heavy Duty Coach Mechanics (Apprentice and Journey), although the system supports new courses and apprenticeship programs.
  • AC Transit Customer Relations application (CusRel) - 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.
  • PTV Lines - A cloud-based public transport software for line planning and public transport service optimisation
  • TransAM - An open-source asset management platform for public transportation agencies.
  • RidePilot - An open-source Computer Aided Scheduling and Dispatch (CASD) software system to meet the needs of small scale human service transportation agencies.
  • TNExT - Transit Network Explorer Tool (TNExT) is a web-based software tool developed for the visualization, analysis, and reporting of regional and statewide transit networks in the state of Oregon.
  • Route Trends (webapp, GitHub) - 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 - 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

Experimental and production transit hardware.

  • Bus Tracking GPS - Code for Miami prototype of a cheap open-source solution to track transit buses.
  • Train departure Display - A replica, near real-time, miniature UK railway station train departure sign based upon a Raspberry Pi Zer0.

Apps

Apps people use when taking transit.

Web Apps (open source)

  • Catenary Maps - Realtime and Schedule global public transport map and navigation software, written in Rust and Svelte.
  • Instabus - Realtime map of Austin's (CapMetro) public transit. Has no server/backend dependency at all and runs completely on GitHub pages.
  • OpenTripPlanner Client GWT - A Google Web Toolkit-based web interface for OpenTripPlanner
  • OpenTripPlanner.js - A Javascript-based client for OpenTripPlanner (no longer under development)
  • OTP-UI React Component Library - React Javascript component library, which can be used to build trip planner webapps. See the Storybook for a demo.
  • GTFS-realtime Alerts Producer Web Application - A Java-based web application for producing GTFS-realtime Service Alerts.
  • HRT BUS Web app - HRT Bus API publishes real time bus data from Hampton Roads Transit through an application programming interface for developers to make apps from it.
  • Transit-Map - Web app that animates vehicles (markers) on a map using the public transport timetables to interpolate their positions along the routes (polylines).
  • Transitive.js - Creates a customizable web map layer of transit routes using Leaflet or D3.
  • Google I/O Transport Tracker - Shows shuttle arrival times for Google I/O conference, based on the open-source transport-tracker project. Note: To implement this yourself, you need a Google Maps APIs Premium Plan license.
  • 1-Click - 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.
  • Bustime - Public transport real-time monitoring with WebSocket updates. Open-source on GitHub.
  • Transit Tracker - Realtime vehicle position for Greater Montreal & Toronto, Canada
  • GTFS Builder - A free web-based application to help you create GTFS files. Maintained by the National Rural Transit Assistance Program (RTAP).
  • Dede - An independent and universal passenger information system (PIS) mapping realtime movement. A message feed with Vehicle Position entities in the GTFS-Realtime format or the Dede app can be used as data source.
  • MBTA tile-server - Scripts to create a Docker container that encapsulates all the elements necessary to develop map tiles for use on MBTA.com
  • Cadê Meu Busão - Realtime tracking transit buses from Belo Horizonte, Brazil. Open-source on GitHub.
  • Tiramisu Transit - An adaptive mobile transit app that shows real-time bus arrival information developed and deployed by Carnegie Mellon University. No longer maintained.

Web Apps (closed source)

  • TransitScreen - Custom realtime displays of all local transportation choices
  • Citylines.co - A collaborative platform for mapping transit systems, with an emphasis on their historical evolution.
  • Bikeshare Map - Status of all worldwide bikeshare stations
  • Bongo - Real-time Transit Tracking for Iowa City, Coralville and the University of Iowa. Combines three disparate transit systems into one UI.
  • CityMapper Webapp - Really polished webapp with trip planner and route status for over 30 of cities.
  • TransSee - Real-time transit predictions based on actual travel times, vehicle locations, schedules and maps. Premium gives you access to a detailed history of schedules, vehicle locations, stop arrivals, schedule adherance, charts and graphs. For an additional fee custom queries can be run on this data.
  • YourStop - 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.
  • DC MetroHero - 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.

Native Apps (open source)

Native Apps (closed source)

  • Transit
  • CityMapper
  • Moovit
  • Transit Display - Multimodal and real-time transit display software.
  • Ualabee - Community driven trip planner with focus on user interaction, users can report anomalies, upload pictures, edit transit data and chat with other passengers.

SDKs

  • Citymapper SDK - Allows you to add journey planning and turn-by-turn navigation for walking, cycling, scooting and transit into native iOS and Android apps.

Visualizations

GTFS Based Visualizations

  • All Transit - Interactive GTFS route and schedule animation (for U.S. cities) using Mapbox GL JS, Deck.gl and Transitland. Github repository here.
  • fastest-bus-analysis-in-the-west - A python Pandas script that combines Ridership/APC, Swiftly speed and dwell data, bus stop inventory, GTFS, and geospatial shapes to create a stop by stop, route by route, time grouping filterable dataset for cross-analyses. The dataset is then visualized in Tableau to help VTA Planners find places to make bus and rail network faster and more reliable through speedups methods like stop consolidation and dedicated lanes.
  • gtfspy-webviz - Web application for animation and visualization of GTFS data using gtfspy.
  • gtfs-to-geojson - A simple online converter for gtfs to geojson with a list of feeds.
  • gtfs-visualizations - Open-source NodeJS application for visualizing the routes of GTFS datasets.
  • Mapnificent - Shows areas you can reach with public transport in a given time. Open-source on GitHub, live at https://www.mapnificent.net/.
  • MIT COAXS - Co-creative Planning of Transit Corridors using Accessibility-Based Stakeholder Engagement (shows route scenarios using OpenTripPlanner Analyst).
  • MOTIS - Intermodal Mobility Information System including visualization
  • MTA Frequency - Frequency visualization of subways and buses in New York City built using Transitland.
  • SEPTA Rail OTP Report - An online on-time performance reporing & drill down tool using GTFS.
  • Simple Transit Map - An online example of how to host and update a webmap.
  • Simple Transit Site - An online example of how to create a transit website all from your gtfs on Github
  • TNExT - Transit Network Explorer Tool (TNExT) is a web-based software tool developed for the visualization, analysis, and reporting of regional and statewide transit networks in the state of Oregon.
  • Toronto Transit Explorer - A Java application that visualizes transit, biking and walking accessibility across the city of Toronto. Uses a modified version of R5 for routing.
  • Transit Vis - A visualization tool to display performance metrics derived from the King County Metro GTFS-RT feed (OneBusAway API). Viewable here. Used for this paper.
  • TransitFlow Animate GTFS data around the world using Processing and Transitland.
  • TRAVIC Transit Visualization Client - Visualizes vehicles moving based on static GTFS data (and sometimes realtime data). Supports over 260 cities. Github account for geOps organization is here.
  • Traze by Veridict - Visualization of public transport vehicles from all over the world. Collaborate with other users to get real-time updates even when it is not available from the agency. Based on a number of sources, including GTFS and GTFS-RT. (Previously known as Livemap24).
  • Visualizing MBTA Data - Interactive graphs that show how people use Boston's subway system.

Transit Map Creation

  • Brand New Subway - An interactive transportation planning game that lets players alter the NYC subway system to their heart's content.
  • BENO Metro Mapm Creator - A very old fashioned but classic transit map creator.
  • Tennessine Metro Designer - A modern and aesthetically pleasing transit map designer.
  • Metro Map Maker   - An open source and simple metro map maker software.
  • MetroDreamin' - A modern, open source software that allows users to create, save, like, and share interactive transit maps with agents.
  • Rail Map Generators - Tool for generating railway maps and information panels in the styles of various cities' public transportation systems.
  • MetroSets - A flexible web tool to visualize set systems using the metro map metaphor. Based on this paper
General Drawing Applications for making transit visualizations
  • Adobe illustrator - The industry-leading vector graphics software (requres membership plan).
  • Inkscape - A free desgn tool similar to Adobe Illustrator.
General GIS Applications for making transit visualizations
  • Felt - An aestically pleasing Modern GIS software.
  • Google Mymaps - Create and share custom maps with Google My Maps.
  • Google Earth - Create and share custom maps with one of the the world's most detailed statelite applications.

Transit Map Aggregation

  • UrbanRail.Net - Worldwide reference map of urban rail transport (metros,trams,commuter rail) with detailed and up-to-date information.
  • OpenRailwayMap - Worldwide map of railways using OpenStreetMap data.
  • AllRailMap - Another worldwide map of railways using OpenStreetMap data.
  • European Railway Atlas -  A reference book of European railway maps that is available for purchase.
  • Rail Transit Maps - A collection of railway maps covering Europe (especially Russia).
  • Tramscale - Website outlining maps showing the scales of tram systems around the world.
  • Timelines - Compare the timelines of Rapid Transit Projects around the world.
  • Metrolinemap - Interactive Maps of the world's Metro systems.
  • Metrocyclopaedia - 3d maps of metro systems across the world (uses data from Metrolinemap).
  • RailFansCanada - Interactive System Map detailing the  the present and future of different urban rail systems in Canada.
  • North American Transit - Map of all Passenger Rail in North America including (intercity rail, metros, trams and tourist lines)
  • Intercity Rail map - Map of the real time location and schedule information for  Amtrak and Via trains
  • Indian Railways Map - Interactive Maps of the Indian Main rail network.
  • National Rail Network Map - This map shows the extent and ownership of rail lines in the United States, including passenger and freight lines.
  • Ferrocarta - A series of maps covering all of the passenger rail networks in Brazil, Canada and France.
  • Train Lookout - A tool to easily Log, map and share your journeys by train.
  • Australian Rail Maps -   Detailed Australian railway maps from the national, state and city levels.
  • Steam Engine "IS" - Maps of railways in the USSR.
  • Carto.Metro - Detailed maps of metro and tram networks of global cities (especially in France).
  • Railway Stations - Photos of Railway Stations across the world.
  • INAT - Aesthetically pleasing static maps of worldwide metros systems.
  • Transit Maps - Critiques and reviews of the design of transit maps from across the world.
  • Transit Explorer - A map containing fixed-guideway transit around the world.
  • Britsh Railways An interactive map of Great Britain's rail network.
  • TransitLand Map - Worldwide map of transit services (which have a GTFS Feed).
  • DB InfraGO - Interactive Map of German Rail infrastructure.
  • SNCF Carte interactive - Interactive Map of French Rail infrastructure.
  • Project Mapping - Schematic maps of UK and worldwide rail networks.
  • China Railway Map - An online Interactive map for the passenger railway transportation system of China, presenting station and rail information.
  • Canadian Rail Atlas - a user-friendly, interactive map of Canada’s nearly 43,000-kilometre railway network.
  • The Rail Map - An Interactive Map with Train lines in North America using data from OpenStreetMap.
  • JR pass - Interactive Map of Mainline Rail in Japan.

GTFS

  • GTFS Spec - Specification for the General Transit Data Feed, or GTFS. Available in several languages.
  • GTFS Best Practices - Best practices for producers of a GTFS feed.

GTFS Libraries

Software that makes it easy to consume GTFS data in a variety of languages.

C
  • CGTFS - C library for reading static GTFS feeds. Supports reading unpacked feeds into application memory or into SQLite databases.
  • RRRR Rapid Real-time Routing - RRRR (usually pronounced R4) is a C-language implementation of the RAPTOR public transit routing algorithm.
C++
  • just_gtfs - C++17 header-only library for reading and writing GTFS (used in Valhalla). Main features: fast reading and writing of GTFS feeds, support for extended GTFS route types, simple working with GTFS Date and Time formats.
C#
Go
Java
  • OneBusAway GTFS Modules - A Java-based library for reading, writing, and transforming public transit data in the GTFS format, including database support.
JavaScript
  • gtfs-sequelize - Node.js library modeling the static GTFS using sequelize.js.
  • gtfs-utils – Utilities to process GTFS data sets (e.g., "flattening" calendar.txt & calendar_dates.txt, computing arrival/departure times of trips).
  • gtfs-via-postgres – Yet another tool to process GTFS using PostgreSQL.
  • Node-GTFS - Loads transit data from GTFS files, unzips it and stores it to a SQLite database. Provides some methods to query for agencies, routes, stops and times.
PostgreSQL
Python
  • ESRI public-transit-tools - Tools for working with public transit data in ArcGIS (license for ArcGIS required).
  • gtfsdb - Python library for converting GTFS files into a relational database.
  • gtfs_functions - Python package with useful functions to create geo-spatial visualizations from GTFS feeds.
  • gtfs-segments - Python package that represents GTFS data for buses in a concise tabular manner using segments.
  • gtfslib-python - An open source library in python for reading GTFS files and computing various stats and indicators about Public Transport networks.
  • gtfsman - Repository-like tool in Python to manage and update a huge number of GTFS feeds.
  • gtfspy - Public transport network analysis and travel time computations using Python3. Compatible with Postgres/PostGIS, Oracle, MySQL, and SQLite. Used by gtfspy-webviz.
  • GTFS Kit - A Python 3.8+ tool kit for analyzing General Transit Feed Specification (GTFS) data. Supersedes GTFSTK.
  • Make GTFS - A Python library to make GTFS feeds from basic route information.
  • Mapzen GTFS - A Python GTFS library that supports reading individual GTFS tables, or constructing a graph to represent each agency in a feed.
  • multigtfs - A Django application to import and export GTFS.
  • partridge - A fast, forgiving Python GTFS reader built on pandas DataFrames.
  • transit_service_analyst - A Python library to support transit service analysis.
R
  • r-transit - Collection of tools for GTFS in R.
  • gtfsio - Fast and flexible functions to read and write GTFS in R.
  • tidytransit - Use tidytransit to map transit stops and routes, calculate travel times and transit frequencies, and validate transit feeds. tidytransit reads the General Transit Feed Specification into tidyverse and simple features data frames.
Ruby
  • GTFS-viz - Ruby script that converts a set of GTFS files into a SQLite database + GeoJSONs (needed by the Transit Map web application)

GTFS Converters

Converters from various static schedule formats to and from GTFS.

  • Chouette - Converts between French-Transmodel NeTEX and GTFS.
  • extract-gtfs-pathways – Command-line tool to extract pathways as GeoJSON from a GTFS dataset.
  • extract-gtfs-shapes – Command-line tool to extract shapes as GeoJSON from a GTFS dataset.
  • GTFS-OSM-Sync - A Java tool for synchronizing data in GTFS format with OpenStreetMap.org.
  • gtfs-parser - The GTFS-PARSER library is a library to allow javascript to parse gtfs and create geojson on client or server.
  • gtfs-service-area - Compute a transit service area from static GTFS. Results are output as single-layer .geojson files. Dockerized version of gtfs-to-geojson.
  • GTFS-route-shapes - A Python script to generate a single geoJSON shape for each transit route in a GTFS archive.
  • gtfs-to-geojson - Javascript tool that converts transit data in GTFS shapes and stops into geoJSON. This is useful for creating maps of transit routes.
  • gtfs2gps - An R package that converts public transportation data in GTFS format to GPS-like records in a data.table, where each row represents the timestamp of each vehicle at a given spatial resolution.
  • gtfs2emis - An R package to estimate the emission levels of public transport vehicles based on General Transit Feed Specification (GTFS) data.
  • gtsf - general transit (GTFS) simple (geographic) features (sf) in R. can be used to convert from GTFS to Shapefile, GeoJSON, and other formats through GDAL.
  • hafas-generate-gtfs (work-in-progress) – A Javascript tool to generate GTFS dumps from HAFAS endpoints.
  • Hafas2GTFS - Hafas2GTFS converter written in Python, optimized for SBB HAFAS feeds.
  • kml-to-gtfs-shapes - Javascript tool to convert polylines from a KML file into a GTFS shapes.txt file. Hosted on GitHub here.
  • NeTEx-to-GTFS Converter Java - Converts NeTEX datasets into GTFS datasets. The input NeTEx datasets are required to follow the Nordic NeTEx Profile.
  • o2g - A simple tool to extract GTFS feed from OpenStreetMap.
  • Open-Transport SYNTHESE Convertors - Converts French-Transmodel, SIRI, NETeX, HAFAS, HASTUS, VDV452, and more.
  • onebusaway-gtfs-to-barefoot - A Java tool to create a Barefoot mapfile from a GTFS file.
  • onebusaway-vdv-modules - A Java library for working with transit data in the VDV format, including converting VDV-452 schedule data into GTFS.
  • osm2gtfs - Turn OpenStreetMap data and schedule information into GTFS.
  • transit_model - A Rust library to convert to/from the following formats: GTFS, NTFS (for Navitia, see Software for Creating APIs), TransXChange (UK specification), KV1 (NL specification), NeTEx (EU specification).
  • transloc-gtfs-rectifier - Python application that attempts to assign GTFS stop_ids to TransLoc IDs using TransLoc's API (TransLoc doesn't provide GTFS stop_ids in their API).
  • Transmodel and IFF to GTFS - Imports and syncs (Transmodel) BISON Koppelvlak1, IFF (a format written by HP/EDS, somewhat similiar to ATCO CIF) to import timetables of the railway networks. The internal pseudo-NETeX datastructure allows to export to GTFS and there are proof-of-concepts to export to other formats such as NETeX, GTFS and IFF.
  • Transporter-Project transxchange-to-gtfs TransXChange to GTFS converter written in Objective-C.
  • TXC TransXChange publisher (UK Department for Transport) - The TXC TransXChange publisher is a standalone software tool that can be used to publish TransXChange compliant XML documents in a format that’s easy to read and print.
  • UK2GTFS - R package that converts UK format TransXchange (bus, metro, tram, ferry) and CIF (rail) timetables to GTFS.

GTFS Data Collection and Maintenance Tools

  • AddTransit - SaaS (Software as a Service) platform to create, edit and publish schedules in GTFS format.
  • bus-router - Python script that generates missing shapes.txt for GTFS using routing from Google Maps Directions API or OSRM.
  • gtfs-blocks-to-transfers - A Python tool to convert GTFS blocks, defined by setting trip.block_id into a series of trip-to-trip transfers (proposal).
  • GTFS Diff - GTFS Diff is a specification created by transport.data.gouv.fr and aims at providing a simple and unified way to express differences between GTFS files.
  • GTFS Editor - A (self-hosted) web-based GTFS editing framework. (Note: this project has been deprecated in favor of IBI Data Tools.)
  • GTFS Editor for Vagrant - Quickly set up the GTFS editor (above) using Vagrant
  • static-GTFS-manager - A (self-hosted) browser-based user interface for creating, editing, exporting static GTFS (see related post).
  • TransitWand - An open source web and mobile application for collecting transit data. Use it to create GTFS feeds, capture passenger counts or generate GIS datasets.
  • IBI Data Tools - A web application that handles GTFS editing, validating, quality checking, and deploying to OpenTripPlanner. (Combines and builds upon the functionality of the deprecated Gtfs Data Manager and GTFS Editor.)
  • IBI Data Tools Infra - A tool to quickly setup and run a local instance of the above IBI Data Tools project.
  • GTFS.html - An entirely browser-based tool to view GTFS feeds. Use it to view routes, stops, timetables, etc.
  • pfaedle - Precise map-matching for GTFS using OpenStreetMap data
  • GTFS shape mapfit - Python tool that fits GTFS shape files and stops to a given OSM map file. Uses pymapmatch for the matching.
  • GTFS Builder - A free web-based application to help you create GTFS files. Maintained by the National Rural Transit Assistance Program (RTAP).
  • gtfs-station-builder - UI tool to help build the internal structure of stations (including pathways.txt)
  • GTFS Text-to-Speech Tester - A command-line tool that reads GTFS stop names out loud using Text-to-Speech to determine which need Text-to-Speech values for tts_stop_name in stops.txt.
  • Spare GTFS-Flex Builder - A free tool that helps transit agencies easily create, manage, and export their transportation data in GTFS-Flex format.
  • Swiftly - Tool generate realtime transit data.

GTFS Merge Tools

GTFS Analysis Tools

  • GTFS Kit - A Python 3.6+ tool kit for analyzing General Transit Feed Specification (GTFS) data. Supersedes GTFSTK.
  • gtfstools - A set of convenient tools for editing and analysing transit feeds in GTFS format in R.
  • transit_service_analyst - A Python library to support transit service analysis.
  • Peartree - A Python library for converting transit data into a directed graph for network analysis.
  • R5: Rapid Realistic Routing on Real-world and Reimagined networks - A Java-based routing engine developed by Conveyal for multimodal (transit/bike/walk/car) networks. It currently plans many trips over a time window for scenario planning and analytics purposes. A related R wrapper package (r5r) is developed independently by IPEA. See also the performance comparison from Higgins et al. (2022), linked below.
  • tidytransit - An R package to read GTFS data into tibbles and simple features dataframes to map transit stops and routes, calculate travel times and transit frequencies, and validate transit feeds.
  • transitr - An R package for constructing and modelling a transit network in real time to obtain vehicle ETAs
  • transit-intensity - A simple project for measuring transit intensity written in Go.
  • Busbuzzard - Inference of probabilistic schedules from empirical data about transit vehicles.
  • ESRI ArcGIS Public Transit Tools (GTFS) - Tools for working with public transit data in ArcGIS
  • GTFS-to-Chart - Creates stringline charts showing all vehicles on a transit route from GTFS data.
  • GTFS Display - Analyse, monitor and maintain GTFS data (Example instances).
  • PTNA - Public Transit Nework Analysis is a open source system for finding and aggregating information about public transportation lines mapped in OSM.

GTFS Timetable Publishing Tools

  • GTFS-to-HTML - Generate human-readable timetables in HTML or PDF format directly from GTFS.
  • Timetable Kit - An open source Python 3.10 module and scripts depending on GTFS Kit, designed to create complex printed/PDF timetables with flexible layouts. Currently only working out of the box for Amtrak's GTFS, but under active development.
  • TimeTablePublisher (TTPUB) - A web publishing system developed by TriMet that allows a transit agency to examine, modify, and transform raw scheduling data into easy-to-read timetables for customer information purposes

GTFS Validators

GTFS Realtime

GTFS Realtime Libraries & Demo Apps

GTFS Realtime Validators

GTFS Realtime (and Other Real-time API) Archival Tools

  • GTFS-realtime to SQL - Parses a GTFS-RealTime feed into an SQL database (used in OpenMobilityData.org)
  • gtfsrdb - A Python tool that supports reading and archiving GTFS-realtime feeds into a database
  • retro-gtfs - A Python application that collects real-time data from the Nextbus API and archives it into the GTFS format (i.e., retrospective GTFS).

GTFS Realtime Convertors

GTFS Realtime Utilities

SIRI

Other multimodal data formats

Widely adopted

  • APDS - Alliance for Parking Data Standards: 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.
  • DATEX - EU data standard for road traffic and travel information.
  • GBFS - General Bikeshare Feed Specification: open data standard for real-time information about bikeshare, scootershare, mopedshare, and carshare.
    • gbfs R package - Functions to interface with GBFS feeds in R, allowing users to save and accumulate tidy .rds datasets for specified cities/bikeshare programs.
  • MDS - Mobility Data Specification: A format to implement realtime data sharing, measurement and regulation for municipalities and mobility as a service providers. It is meant to ensure that governments have the ability to enforce, evaluate and manage providers. Maintained by the Open Mobility Foundation.
  • NeTex - A general purpose XML format designed for the exchange of complex static transport data among distributed systems managed by the CEN standards process.
  • TODS - Transit Operational Data Standard: standard format for representing transit schedules used by drivers, dispatchers, and planners to carry out transit operations.
  • TOMP - Transport Operator Mobility-as-a-service Provider API: API standard for use by transport operators and mobility-as-a-service providers for operator discovery, trip planning, end user interaction, booking, and payment.

Pilot or development stage

  • CurbLR - A specification for curb regulations.
  • Dyno-Demand - A GTFS-based travel demand data format focusing on individual passenger demand suitable for dynamic network modeling developed by San Francisco County Transportation Authority, LMZ LLC, and UrbanLabs LLC.
  • Dyno-Path - (Under development - see this post) Data for individual passenger trajectories.
  • GTFS-plus - A GTFS-based transit network format for vehicle and capacity data suitable for dynamic transit modeling developed by Puget Sound Regional Council, UrbanLabs LLC, LMZ LLC, and San Francisco County Transportation Authority.
  • GTFS-ride - An open, fixed-route transit ridership data standard developed through a partnership between the Oregon Department of Transportation and Oregon State University.
  • GTFS-stat - An extension to a GTFS transit network with additional files that contain performance data developed by UrbanLabs LLC and San Francisco County Transportation Authority.
  • GMNS - General Modeling Network Specification: A format for sharing routable road network files designed to be used in multi-modal static and dynamic transportation planning and operations models. Volpe/FHWA partnership with Zephyr Foundation.
  • GTNS - General Travel Network Specification: A planned data specification for sharing travel demand model networks.
  • IXSI - interface for exchanging information between a travel information system and a sharing system (carshare, bikeshare).
  • MTLFS - Managed and Tolled Lanes Feed Specification: Proposal for a schema that comprise the Managed and Tolled Lanes Tolling Feed Specification (MTLFS) and defines the fields used in all of those files developed by Santa Clara Valley Transportation Authority.
  • MaaS API - A set of open documents and test suite that defines a MaaS-compatible API.
  • NCHRP 08-119 Developing Data Standards and Guidance for Transportation Planning and Traffic Operations - Phase 1 (Anticipated) - 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.
  • OMX: The Open Matrix data file format - A structured collection of two-dimensional array objects and associated metadata, for possible use in the transportation modeling industry.
  • OJP - Open Journey Planner.
  • OSDM - Open Sales and Distribution Model: Aims to substantially simplify the booking process for customers of rail trips and to lower complexity and distribution costs for distributors and railway carriers. Contains a specification of an offline model and on-line API. Maintained by the International Union of Railways (UIC).
  • SAE Shared and Digital Mobility Committee - Appears to be working on a data standard for car share and transportation network companies (TNCs) / rideshare.
  • shared-row - A specification for right-of-way (ROW) for a SharedStreets Reference.
  • TCRP G-16 Development of Transactional Data Specifications for Demand-Responsive Transportation (In progress) - 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.
  • TIDES - 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.

Research and Commentary

Blog posts, and reports related to open transit data.

Blog posts

Academic papers

Government reports

Community-maintained lists

License

CC0

To the extent possible under law, MobilityData,Center for Urban Transportation Research at the University of South Florida, and Luqmaan Dawoodjee have waived all copyright and related or neighboring rights to this work.

About

This is a community resource for informational use only - listing of a project/product does not imply endorsement.

This list is built and maintained by open source community contributors like you! MobilityData stewards the project.

#Awesome-transit was originally created by Luqmaan Dawoodjee and was stewarded by the Center for Urban Transportation Research at the University of South Florida for several years before the project was transferred to MobilityData.