finds.dev← search

// the find

MIERUNE/GTFS-GO

★ 127 · Python · GPL-2.0 · updated Mar 2026

QGIS-Plugin to parse GTFS data, to show and aggregate routes and stops.

A QGIS plugin that parses GTFS transit data and renders routes and stops as styled GeoJSON layers. It also aggregates service frequency per path segment and can unify nearby duplicate stops using three heuristic rules. Useful for transit planners and GIS analysts who already live in QGIS and want to avoid writing pandas pipelines by hand.

Stop-unification logic is practical and tiered — parent_stop, ID prefix, then name+distance — covering the messy real-world cases where agencies publish the same physical stop under multiple IDs. Frequency aggregation that weights line thickness visually is genuinely useful for spotting dominant corridors at a glance. CI covers linting and unit tests, and the release workflow automates plugin packaging. The preset data source list lowers the barrier for people who don't already have a GTFS zip on hand.

The stop-unification distance threshold (0.003 degrees, roughly 300m) is hardcoded in constants.py with no UI to adjust it — that will silently merge stops that shouldn't be merged in dense urban networks. The gtfs_parser submodule is a separate repo tracked via .gitmodules, which means cloning without --recurse-submodules gives you a broken install with no clear error. 127 stars after what appears to be several years suggests limited adoption outside Japan, and the preset data sources are heavily Japan-focused, so international users will need to BYO zip files for almost any real use case. No support for GTFS-RT (real-time feed extension), so this is strictly historical/scheduled data only.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →