TransitDataFeeder: open source web-based GTFS creation and maintenance tool

Roughly one month ago, the source code for TransitDataFeeder was released. TransitDataFeeder is an open source web-based application for creating and maintaining data in the General Transit Feed Specification.

The software aims to offer equivalent functionality to what Trillium already offers in the form of WebSchedule. However, TransitDataFeeder is different in several ways. Here’s more information about those differences, the project, and how this may potentially develop.

What is open source? What does that mean?
The “source code” of any software application is the DNA from which the working application is built. Open source means that this code is available, without cost, to anyone, for download, modification, and use. Stipulations for the use of the code, and modified versions of it, are spelled out in an open source license agreement. In the case of TransitDataFeeder, it is licensed under the Apache License 2.0.

Here’s what this means in plainer terms, specific to this project. Anyone can access the TransitDataFeeder source code. Using this code, it is possible to build and install the application. The application is written in Java, and needs JBoss and PostgreSQL installed. It requires some level of development experience, or at least understanding of software technologies, to execute this installation. More details on installation are in the project online discussion group.

New features are added, and bug fixes accomplished, by modifying the software code. These changes can be contributed back to the central source code repository for others to use and build upon.

Note that much of this activity will require the services of a professional developer to accomplish. This developer might be paid staff at a transit agency, or a consultant outside of the transit agency. Open source does not equal “cost-free.” To function well, the software requires support and maintenance. Open source software does, however, provide other benefits. It gives transit agencies more control over the software they use, enabling addition of features, bug fixes, and integration with other systems more readily. It helps transit agencies avoid vendor lock. Ultimately, open source software may deliver improved value to transit agencies. For more on open source potential for transit agencies, read my interview with TriMet’s Chief Technology Officer and IT Manager for GIS and Location-based Services.

How did this project come about? What is its history?
The TransitDataFeeder (TDF) code and software is the end product of the Google Transit Data Tool for Small Agencies project, sponsored by the Transportation Research Board (TRB). Trillium designed the interface for the application and scoped its features. Software development was completed by our Portland-based neighbor SingleMind Consulting.

What’s happening now?
We’re wrapping up a pilot test. Several transit agencies participated in the proejct to use the TDF application to create GTFS. Trillium is currently helping them to use the produced GTFS to integrate data into Google Maps/Transit.

The software code is now available for those who wish to use it. The code is available at for download at the TDF project hub (Google Code). In addition, this site contains links to application documentation, project documents, and the open TransitDataFeeder discussion group.

Already, organizations are interested in, and beginning to use, the Transit Data Feeder code and application. One organization is goEuropa in Poland, which is also leveraging the OpenTripPlanner software for a regional online trip planner project.

As additional stakeholders and contributors engage in this ongoing open source software project, it is my hope that new features will be added. We actually went beyond the required scope in the delivered application features, but there are several features I hoped to include that could not be due to budget constraints. They are:

  • Support for creating, maintaining, and exporting route alignments. If you’ve followed the Google Transit support groups, you’re aware of some of the issues and difficulties presented by supplying and maintaining the shapes.txt file, which describes route alignments. There are a few challenges: one route may include several travel patterns, each with a somewhat different travel path. For example, Trillium client Redwood Transit System’s Mainline route includes over 50 different travel patterns. Creating (and maintaining) the route alignment data for all those travel patterns using a brute force (manual) approach just isn’t feasible. It’s necessary to have easy-to-use tools to automate the process.
  • Support for importing data. This feature, or set of features, would allow agencies to import a spreadsheet of stop locations, or even existing GTFS into the TransitDataFeeder.
  • Bulk modification of data. Currently, it’s only possible to edit one record at a time. It would be useful to be able to select multiple records for bulk updates.
  • Additional map-based data views. Currently, it’s only possible to view and edit one stop location at a time. In the future, I think it would be useful for the user to see and edit locations in a system-wide view.

Trillium plans to work with clients and partners to implement these features. We’ll keep you posted as new features are added.

How does my agency or organization (and our customers) and benefit and contribute?
Your agency can employ staff developers or consultants to install, use, and potentially improve on the TransitDataFeeder. If you are interested in the project, consider joining the TransitDataFeeder discussion group (Google Groups) to stay on top of the latest developments. If you would like to consider the TransitDataFeeder for your organization, contact Trillium to request a demo.

How does Trillium help transit agencies utilize and make the most of TransitDataFeeder?
Trillium plans to offer a hosted version of TransitDataFeeder. This means that we’ll turn on TransitDataFeeder for you on our server. There will be nothing for your agency to install. Trillium will handle updating the centrally-hosted software with new versions of the application to apply bug fixes and introduce new features. Part of this hosted service will be support services to help staff at client transit agencies use the software. If a transit agency client has specific needs or requirements the software needs to be modified to serve, Trillium is available for hire to design and develop the new feature.

Below, a screenshot of the TransitDataFeeder interface.