build-cp-gtfs
March 25, 2019 ยท View on GitHub
Build GTFS from the Comboios de Portugal ๐ต๐น (CP, Portugese Railways) REST API using the comboios JavaScript module. Inofficial, using CP endpoints. Ask them for permission before using this module in production.
Work in progress. This software is not stable yet. See the to-do section.
Installation
Library
npm install --save build-cp-gtfs
CLI
npm install -g build-cp-gtfs
Usage
Library
The script takes a startDate and an endDate JS Date() object (the feed will include the endDate, days will be calculated in Europe/Lisbon timezone) and return a Promise that will resolve in an object containing GTFS object streams:
const generateGTFS = require('build-cp-gtfs')
generateGTFS(new Date("2019-05-01"), new Date("2018-05-31"))
.then((gtfs) => {
gtfs.routes.pipe(someStream)
gtfs.stops.pipe(anotherStream)
})
The GTFS object contains the following streams:
agencystopsroutestripsstop_timescalendar_datesfeed_info
CLI
build-cp-gtfs start-date end-date directory
build-cp-gtfs 2019-05-01 2019-05-31 ~/cp-gtfs
To do
- minify/optimize gtfs
calendar_datestocalendar
See also
- comboios - Comboios de Portgal API client in JavaScript
- db-api-to-gtfs - Build GTFS from the Deutsche Bahn (DB, German Railways) REST API
- european-transport-operators - List of european long-distance transport operators, available API endpoints, GTFS feeds and client modules.
Contributing
If you found a bug or want to propose a feature, feel free to visit the issues page.