Installation
$ npm install openstreetmap-stream
Note: you will need node
and npm
installed first.
The easiest way to install node.js
is with nave.sh by executing [sudo] ./nave.sh usemain stable
Usage
You can extract the openstreetmap data from a file stream:
var osm = ; // wget https://s3.amazonaws.com/metro-extracts.mapzen.com/auckland_new-zealand.osm.pbfosm ;
Roll your own
The easiest way to get started writing your own pipes is to use through2
; just make sure you call next()
.
var osm = through = ; // wget https://s3.amazonaws.com/metro-extracts.mapzen.com/auckland_new-zealand.osm.pbfosm ;
node 241968426 -16.8675316 178.8918084node 241968427 -16.8680169 178.8950226node 241968428 -16.8682792 178.8944902node 241968430 -16.8678736 178.8966257
Schema
Nodes:
"type": "node" "id": "241956126" "lat": -162484711 "lon": 1795422587 "tags": "created_by": "JOSM" "info": "version": 2 "timestamp": 1204332911000 "changeset": 237950 "uid": "8834" "user": "Jocelyn"
Ways:
"type": "way" "id": "22572593" "tags": "source": "PGS" "natural": "coastline" "created_by": "JOSM" "info": "version": 1 "timestamp": 1201026717000 "changeset": 680785 "uid": "10927" "user": "Skywave" "refs": "241979960" "241979970" "241979971" "241979972" "241979973" "241979959" "241979960"
Advanced Usage
You can extract the openstreetmap data from an existing file stream:
var osm = fs = ; fs ;
You can also extract the data from stdin using a unix pipe:
var osm = ; processstdin ;
#!/bin/bash cat auckland_new-zealand.osm.pbf | node stdin.js;
NPM Module
The openstreetmap-stream
npm module can be found here:
https://npmjs.org/package/openstreetmap-stream
Contributing
Please fork and pull request against upstream master on a feature branch.
Pretty please; provide unit tests and script fixtures in the test
directory.
Running Unit Tests
$ npm test
Continuous Integration
Travis tests every release against node version 0.10