/transit-isochrones

Isochrones for public transport using OSM data and GTFS feeds built in Rust

Primary LanguageRust

Public transport isochrones

This is a web server that exposes a simple API for computing public transportation isochrones for a given area. It requires an osm.pbf and gtfs file in order to work. For a given start coordinates, arrival time, and travel duration it will provide a geojson of the area accessible using public transport.

Quick start

You need to have Rust installed to run the server. You can run it using the following command.

cargo run --release -- [path/to/osm/file.osm.pbf] [path/to/gtfs.zip]

Once the server is running, you can send GET requests to receive isochrones.

curl localhost:8000/isochrone?lat=<Latitude>&lon=<Longitude>&arrival_time=<HH:MM:SS>&duration=<Seconds>

Todo

This project is still a work in progress. The main improvements I have in the pipeline are:

  • Making the graph stucture more memory efficient
  • Adding more modes of transport (i.e., walking and driving)
  • Add geocoding functionality so users can supply location names instead of coordinates
  • Building a basic front end for the web