Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Isochrone Accessibility Mapping 🗺️

License Leaflet OTP

An interactive, dynamic web application designed to calculate and visualize travel time polygons (Isochrones) and transit routes entirely using a local, free routing engine (OpenTripPlanner).

By leveraging local OpenTripPlanner (OTP) and raw OSM/GTFS data, this application completely bypasses expensive alternatives like Mapbox or Google Maps APIs, calculating complex multi-modal transit networks directly on your machine.

🚀 Features

  • Dynamic Isochrones: Compute travel-time polygons for Transit, Walking, and Driving.
  • Micro-Routing: Click anywhere on the map to calculate exact A-to-B transit plans (including bus/train lines and walking transfers).
  • Infinite Scaling (Local): Because calculations run on a local OTP Java instance, it handles unlimited API requests and scales strictly based on computer RAM.
  • Beautiful UI: Glassmorphism controls, map styling, and responsive side panels built purely with HTML/CSS.

🛠️ Tech Stack

  • Frontend: HTML5, Vanilla JavaScript (ES6+), CSS3
  • Mapping: Leaflet.js
  • Routing Engine: OpenTripPlanner (OTP) v1.5 [Local Backend]
  • Data Sources: OpenStreetMap (.pbf) and GTFS (.zip) for public transit schedules.

⚙️ How to Run Locally

1. Start the OTP Server

To serve requests, the OTP engine needs to be running. You need Java installed.

cd otp-server
java -Xmx4G -jar otp-1.5.0-shaded.jar --router default --server

Note: OTP graph and map data files (.pbf, .zip, .obj) are large and thus not included in this repository. Ensure you place your local map/GTFS data in the otp-server folder before building the graph.

2. Run the App

Simply open index.html in your web browser. A local server like Live Server (VS Code) or Python's HTTP server is recommended:

python -m http.server 3000

Then navigate to http://localhost:3000. Ensure that OTP is actively running on port 8080.

About

Dynamic Isochrone Accessibility Mapping: Multi-modal transit routing and travel-time polygon mapping via local OpenTripPlanner & Leaflet

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages