vbb-stations-autocomplete provides a stations search for the Berlin Brandenburg public transport service (VBB). It pulls its data from vbb-stations
.
Note: Because there are ~ 13k
stations, this module contains ~ 800k
of data (~ 240k
gzipped).
npm install vbb-stations-autocomplete
autocomplete(query, results = 3, fuzzy = false, completion = true)
const autocomplete = require('vbb-stations-autocomplete')
autocomplete('Seestr', 3)
This returns stations in a reduced form of the Friendly Public Transport Format. To get all details, pass each id
into vbb-stations
.
[
{
id: '900000009103', // U Seestr.
relevance: 2.0817557,
score: 40.8276194
}, {
id: '900000009105', // Seestr./Amrumer Str.
relevance: 1.0408778,
score: 15.7013362
}, {
id: '900000019103', // Seestr./Beusselstr.
relevance: 1.3878371,
score: 12.3226614
}
]
If you set fuzzy
to true
, words with a Levenshtein distance <= 3
will be taken into account. This is a lot slower though:
test | performance |
---|---|
non-fuzzy – U mehringdamm |
325 ops/sec |
fuzzy – U mehrigndamm |
73 ops/sec |
Setting completion
to false
speeds things up a lot:
test | performance |
---|---|
completion – U friedr |
306 ops/sec |
no completion – U friedr |
5076 ops/sec |
If you have a question, found a bug or want to propose a feature, have a look at the issues page.