Skip to main content

General Transit Feed Specification (GTFS) as a Django app

Project description

multigtfs is an Apache 2.0-licensed Django app that supports importing and exporting of GTFS feeds. All features of the June 20, 2012 reference are supported, including all changes up to February 17, 2014. It allows multiple feeds to be stored in the database at once.

It requires a spatial databases compatible with GeoDjango. PostgreSQL 9.x and PostGIS 2.x are recommended for development and production, since these support all the GeoDjango features.

Status

multigtfs is ready for your GTFS project.

Point releases (such as 1.0.0 to 1.0.1) should be safe, only adding features or fixing bugs. Minor updates (1.0.1 to 1.1.0) may include significant changes that will break relying code. In the worst case scenario, you may need to export your GTFS feeds in the original version, update multigtfs and your code, and re-import.

multigtfs works with Django 1.8 (the long-term support, or LTS, release) through 1.11. Support will follow the Django supported releases, as well as the Python versions supported by those releases.

All valid GTFS feeds are supported for import and export. This includes feeds with extra columns not yet included in the GTFS spec, and feeds that omit calendar.txt in favor of calendar_dates.txt (such as the TriMet archive feeds). If you find a feed that doesn’t work, file a bug!

See the issues list for more details on bugs and feature requests.

Example project

Check out the example project.

If you have Docker installed and working, you can run the example project without installing a database.

  1. Add one or more feeds to import to the folder feeds/import. You can find a feed for download at https://transitfeeds.com, such as Tulsa Transit’s Feed.

  2. Initialize the containers with docker-compose up. After a few minutes, it will display:

    web_1  | Django version 1.8.18, using settings 'exploreproj.settings'
    web_1  | Development server is running at http://0.0.0.0:8000/
    web_1  | Using the Werkzeug debugger (http://werkzeug.pocoo.org/)
    web_1  | Quit the server with CONTROL-C.
    web_1  |  * Debugger is active!
    web_1  |  * Debugger PIN: XXX-XXX-XXX
  3. Visit http://localhost:8000 to view the example project.

See the example project for more details.

Development

Code:

https://github.com/tulsawebdevs/django-multi-gtfs

Issues:

https://github.com/tulsawebdevs/django-multi-gtfs/issues

Dev Docs:

http://multigtfs.readthedocs.io/

IRC:

irc://irc.freenode.net/tulsawebdevs

Changelog

1.1.1 (2017-08-02)

1.1.0 (2017-07-09)

  • Add support for Django 1.10 and 1.11

  • Drop support for Django 1.7 and earlier, and for South migrations. If you are using these, upgrade to 1.0.0 first, migrate your codebase to Django 1.8 and Django migrations, then update to 1.1.0.

  • Move Python 2 / Python 3 and other compatibilty code to multigtfs/compat.py. Exclude this file from the make qa coverage report, unless the COVERAGE_COMPAT environment variable is set. Because the cross-environment code is now in this file, many lines will be uncovered in a particular environment, while other files should be 100% covered. This file is tested in the supported environments in TravisCI, and a combined coverage report is generated in Coveralls, where compat.py should be 100% covered.

  • Add a dockerized environment for the explore example app, and run it under Django 1.11.

  • Whitespace-only values in import files are treated as empty values (PR #56)

1.0.0 (2016-03-29)

  • The project has been production-ready for a while. Updating the version number and the PyPI classifiers to reflect that.

  • Add support for Django 1.7 through 1.9, and a compatibility layer to handle future versions.

  • Add support for transitioning from South to Django migrations.

Older changes can be found in the full documention.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multigtfs-1.1.1.tar.gz (97.6 kB view details)

Uploaded Source

Built Distribution

multigtfs-1.1.1-py2.py3-none-any.whl (90.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file multigtfs-1.1.1.tar.gz.

File metadata

  • Download URL: multigtfs-1.1.1.tar.gz
  • Upload date:
  • Size: 97.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for multigtfs-1.1.1.tar.gz
Algorithm Hash digest
SHA256 47b6815056b7beb5219b596bd5fdbd0c589cbf0c5e22ca2d465ef3ad8a6228ee
MD5 31750cab0087d323e6c708d453b85dae
BLAKE2b-256 614f246fc2dfe7d279f6c8dd768aaebeba5e1fa84e408dec8d564ef9ff0cdb62

See more details on using hashes here.

File details

Details for the file multigtfs-1.1.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for multigtfs-1.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b707224a8a18ff3022bf1f0cc995cd1a7de776789d3ad5bf843c4afcd588679f
MD5 5bbcb8f1c7c09ac83bcfc81acc2de9e6
BLAKE2b-256 2c735c8a61678f9561e77b550cea50ed63a2705c0ca6d4ab92b551c62a2ce5b7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page