Git Product home page Git Product logo

awesome-transit's Introduction

awesome-transit Awesome

Community list of transit APIs, apps, datasets, research, and software πŸšŒπŸŒŸπŸš‹πŸŒŸπŸš‚

Have something to add or change? Open a pull request or issue.


Table of Contents

Getting started

If this is your first time dealing with transit data, you might find these links useful:

  • 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.
  • GTFS Realtime - 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.
  • 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.

Community

Places to ask questions and find other community resources.

Data

  • 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.
  • CapMetrics - Historical vehicle locations for Austin's transit agency (CapMetro). Data is collected by capmetricsd, a Go daemon.
  • National Transit Database - Information and statistics on the transit systems of the United States, run by the Federal Transit Administration.
  • TransitFeeds - 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.
  • TransLoc OpenAPI - Real-time vehicle, route, stop, and arrival data for over 60 transit systems in the United States.
  • GTFS Data Exchange - Used to be the definitive list of GTFS links. Shutdown in 2016. But 93G of data from 2008 to 2016 is available upon request.

APIs

Software that provides an API to transit data.

  • Navitia.io - REST API for journey planning, stop schedules, isocrhons and lot more on US and EU. Navitia is the opensource engine behind the 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.
  • TransitClock - Java application that can consume raw vehicle positions and generate prediction times in formats such as GTFS-realtime. Formerly known as "Transitime".
  • pyBikes - an API on worldwide bikeshare systems powering CityBikes
  • 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).
  • 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.
  • TransiCast - 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

Tools for transit agencies.

  • Remix - A webapp that lets transit agencies easily plan routes.

Hardware

Experimental and production transit hardware.

  • Bus Tracking GPS - Code for Miami prototype of a cheap open-source solution to track transit buses.

Apps

Apps people use when taking transit.

Web Apps

  • TransitScreen - Custom realtime displays of all local transportation choices
  • Instabus - Realtime map of Austin's (CapMetro) public transit. Has no server/backend dependency at all and runs completely on GitHub pages.
  • Maryland MTA Real-time Vehicle Tracking
  • OpenTripPlanner Client GWT - A Google Web Toolkit-based web interface for OpenTripPlanner
  • OpenTripPlanner.js - A Javascript-based client for OpenTripPlanner
  • 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).
  • Bikeshare Map - Status of all worldwide bikeshare stations
  • Bongo - Real-time Transit Tracking for Iowa City, Coralville and the University of Iowa. Awesome because it combines three disparate transit systems into one UI.
  • Transitive.js - Creates a customizable web map layer of transit routes using Leaflet or D3.
  • Brand New Subway - An interactive transportation planning game that lets players alter the NYC subway system to their heart's content.
  • CityMapper Webapp - Really polished webapp with trip planner and route status for over 30 of cities.
  • 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.
  • 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.

Native Apps (open source)

Native Apps (closed source)

Visualizations

  • Visualizing MBTA Data - Interactive graphs that show how people use Boston's subway system.
  • MIT COAXS - Co-creative Planning of Transit Corridors using Accessibility-Based Stakeholder Engagement (shows route scenarios using OpenTripPlanner Analyst).
  • 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.
  • Muni, this moment - Realtime map of all the buses in San Francisco.
  • MTA Frequency - Frequency visualization of subways and buses in New York City built using Transitland.
  • Veridict LiveMap - Millions of individually tracked public transport units across the entire world. Based on a number of sources, including GTFS and GTFS-RT.
  • Graphs in Transit - Graph centrality metrics displayed over rapid transit networks for New York City, Boston, and Paris.
  • SEPTA Rail OTP Report - An online on-time performance reporing & drill down tool using GTFS.
  • TransitFlow Animate GTFS data around the world using Processing and Transitland.
  • gtfspy-webviz - Web application for animation and visualization of GTFS data using the gtfspy Python3 library.

Resources

GTFS

GTFS Libraries

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

  • Mapzen GTFS - A Python GTFS library that supports reading individual GTFS tables, or constructing a graph to represent each agency in a feed.
  • gtfsdb - Python library for converting GTFS files into a relational database.
  • OneBusAway GTFS Modules - A Java-based library for reading, writing, and transforming public transit data in the GTFS format, including database support.
  • GTFS to SQL - Parses a GTFS feed into an SQL database (used in TransitFeeds.com)
  • SQL to GTFS - Convert an SQLite file generated with "GtfsToSql" back to a zipped GTFS file.
  • Go GTFS Parser - A GTFS parsing library for Go
  • GTFS Feed Parser - .Net/Mono implementation of a GTFS parser
  • Node-GTFS - Loads transit data from GTFS Data Exchange, unzips it and stores it to a MongoDB database and provides some methods to query for agencies, routes, stops and times.
  • GTFS-viz - Ruby script that converts a set of GTFS files into a SQLite database + GeoJSONs (needed by the Transit Map web application)
  • gtfs-sequelize - Node.js library modeling the static GTFS using sequelize.js.
  • gtfslib-python - An open source library in python for reading GTFS files and computing various stats and indicators about Public Transport networks.
  • multigtfs - A Django application to import and export GTFS
  • GTFSTK - A Python 3 toolkit for analyzing GTFS data in memory. Uses Pandas and Shapely for speed.
  • gtfs-schema - PostgreSQL schema for GTFS feeds.
  • partridge - A fast, forgiving Python GTFS reader built on pandas DataFrames.
  • gtfspy - Public transport network analysis and travel time computations using Python3 and SQLite. Used by gtfspy-webviz.
  • RRRR Rapid Real-time Routing - RRRR (usually pronounced R4) is a C-language implementation of the RAPTOR public transit routing algorithm.

GTFS Converters

Converters from various static schedule formats to and from GTFS.

  • 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.
  • Open-Transport SYNTHESE Convertors - Converts French-Transmodel, SIRI, NETeX, HAFAS, HASTUS, VDV452, and more.
  • Chouette - Converts French-Transmodel, SIRI, NETeX. See Chouette.mobi website for more info.
  • osm2gtfs - Turn OpenStreetMap data and schedule information into GTFS.
  • GTFS-OSM-Sync - A Java tool for synchronizing data in GTFS format with OpenStreetMap.org.
  • onebusaway-gtfs-to-barefoot - A Java tool to create a Barefoot mapfile from a GTFS file.
  • osmtogtfs - Python 3 script that exports GTFS feed from OpenStreetMap data.
  • 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).

GTFS Tools

  • bus-router - Python script that generates missing shapes.txt for GTFS using routing from Google Maps Directions API or OSRM.
  • GTFS Editor A (self-hosted) web-based GTFS editing framework.
  • GTFS Editor for Vagrant Quickly set up the GTFS editor (above) using Vagrant
  • 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.
  • Gtfs Data Manager - A workflow tool for managing large amounts of GTFS data and importing them into OpenTripPlanner.
  • GTFS.html - An entirely browser-based tool to view GTFS feeds. Use it to view routes, stops, timetables, etc.

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 TransitFeeds.com)
  • 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

  • NeTex - A general purpose XML format designed for the exchange of complex static transport data among distributed systems managed by the CEN standards process.
  • General Bikeshare Feed Specification (GBFS) - Open data standard for real-time bikeshare information developed by members of the North American Bikeshare Association (NABSA).
  • GTFS-ride - An open, fixed-route transit ridership data standard developed through a partnership between the Oregon Department of Transportation and Oregon State University.
  • Managed and Tolled Lanes Feed Specification (MTLFS) - 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.
  • 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.
  • 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-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.
  • TIDES project - 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.
  • SAE Shared and Digital Mobility Committee - Appears to be working on a data standard for car share and transportation network companies (TNCs) / rideshare.

License

CC0

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

About

Originally created by Luqmaan Dawoodjee, now maintained by the Center for Urban Transportation Research at the University of South Florida.

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

awesome-transit's People

Contributors

antrim avatar araichev avatar arangates avatar barbeau avatar caywood avatar drewda avatar evansiroky avatar fulldecent avatar harringtonp avatar invisiblefunnel avatar jamescr avatar kaezarrex avatar laidig avatar landonreed avatar laurentg avatar luqmaan avatar mehdisadeghi avatar nselikoff avatar patkan avatar patrickcole avatar readmecritic avatar rmkujala avatar scrudden avatar skorasaurus avatar thatsmydoing avatar tyleragreen avatar ustroetz avatar willgeary avatar wilsaj avatar xavierraffin avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.