Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including zhv-de with all npm packages installed. Try it out:

var zhvDe = require("zhv-de")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

zhv-de v0.0.0

Lets you fetch the most up-to-date release of the german central public transport stop registry (Zentrales Haltestellenverzeichnis, ZHV).

zhv-de

Fetch the most up-to-date release of the german central public transport stop registry (Zentrales Haltestellenverzeichnis, ZHV). Sadly, there is no static endpoint from which you could obtain this data (yet), you can use this small tool until they provide one.

npm version Build Status Greenkeeper badge dependency status license chat on gitter

Installation

npm install zhv-de

Usage

The module exposes a single method which takes username and password (you can obtain those credentials for free at the ZHV website) as arguments and returns a Promise that will resolve in an object-mode stream of stops.

const zhv = require('zhv-de')
const username = '<your-zhv-username>'
const password = '<your-zhv-password>'

const ndjson = require('ndjson') // we use this to transform objects to JSON to pipe to stdout

zhv(username, password)
.then(dataStream => dataStream.pipe(ndjson.stringify()).pipe(process.stdout))
.catch(console.error)

The objects emitted by the stream will look as follows (note that the keys start with a lowercase character instead of the uppercase variant used on the ZHV website):

{
    seqNo: '0',
    type: 'S',
    dHID: 'de:07334:1714',
    parent: 'de:07334:1714',
    name: 'Wörth Alte Bahnmeisterei',
    latitude: 49.048672,
    longitude: 8.266324,
    municipalityCode: '07334501',
    municipality: 'Wörth am Rhein',
    districtCode: null,
    district: null,
    condition: 'Served',
    state: undefined,
    description: undefined,
    authority: 'NVBW'
}

Contributing

If you found a bug or want to propose a feature, feel free to visit the issues page.

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free