Skip to content

Work-in-progress journey planner for Dutch public transport

Notifications You must be signed in to change notification settings

Davvos11/reisplanner

Repository files navigation

Zwiebers reisplanner

Work-in-progress journey planner for Dutch public transport.

Uses the GTFS feed from https://gtfs.ovapi.nl/nl/.

Current features and rough to-do

  • GTFS feed
    • Download GTFS data
    • Parse static GTFS data
    • Save static GTFS data to database
    • Parse realtime GTFS data
    • Save realtime GTFS data to database
      • Trip updates
        • Delays
        • Trip descriptors
      • Vehicle positions
      • Alerts
  • Misc data
    • IFF transfer times per station
    • IFF transfer times between stops
    • Bison halte data
  • Journey planning algorithm
    • CSA (proof of concept)
    • RAPTOR
      • Basic implementation
      • Modal transfers
    • Custom variant on RAPTOR
  • Display algorithm results
  • Display vehicle information

Project structure

All commands in this section should be run in this directory.

reisplanner-gtfs

Downloads the static and realtime GTFS information from ovapi and parses it into the sqlite database.
This also contains the type definitions for the GTFS objects.

The programs downloads the data initially, then updates the realtime data every minute and static data every day after 3:00 UTC.

I would not recommend running without --release since parsing the static GTFS data takes a very long time otherwise.

cargo run -p reisplanner-gtfs --release

Note: the GTFS protobuf definitions generate Rust code. If your IDE shows errors, try to run cargo build first.

reisplanner-algorithm

Contains the journey planning algorithms.

Currently only contains a very naive CSA implementation.

cargo test -p reisplanner-algorithm --release -- --nocapture 

About

Work-in-progress journey planner for Dutch public transport

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages