Package coopgo/osmtransit
is a Golang library to extract transit data from OpenStreetMap PBF files.
The main features of this package are :
- Scan OSM files in the osm.pbf format (example : https://download.geofabrik.de/europe/france-latest.osm.pbf)
- Extract transit data (stops, routes, ...)
- Uses GTFS data structures from the coopgo/gtfs library to return transit data (ability to convert OSM transit data to partial GTFS files/CSV files using this library -still under development there-)
Supported transit objects (and TODO list) :
- Stops
- Stop Areas
...
You can get retrieve transit objects through :
- A channel for concurrent processing using
parser.Extract(...)
- A slice of TransitData objects using
parser.TransitData()
- A structured transit feed using
parser.TransitFeed()
Check out examples in the examples folder.
This library is still in development.
We welcome any contributions following theses guidelines :
- Write simple, clear and maintainable code and avoid technical debt.
- Leave the code cleaner than when you started.
- Refactoring existing code for better performance, better readability or better testing wins over creating a new feature.
If you want to contribute, you can fork the repository and create a pull request.
For reporting a bug, you can open an issue using the Bug Report template. Try to write a bug report that is easy to understand and explain how to reproduce the bug. Do not duplicate an existing issue and keep each issue specific to an individual bug.
coopgo/osmtransit
is under the Apache 2.0 license. Please refer to the LICENSE file for details.