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.
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>
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