shp2json

Convert shapefile zip archives into GeoJSON using ogr2ogr with a streaming interface

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
shp2json
1.4.03 years ago12 years agoMinified + gzip package size for shp2json in KB

Readme

shp2json
Convert shapefile zip archives to streaming GeoJSON using gdal and JSONStream.
Uses the gdal native addon for node.js. No compilation required on most platforms as pre-compiled binaries will be downloaded automatically when you run npm install shp2json.
build status
example

shp2json.js

var toJSON = require('shp2json');
toJSON(process.stdin).pipe(process.stdout);
process.stdin.resume();

// or

toJSON.fromShpFile('./data/from_files/shape.shp').pipe(process.stdout);

shp2json command

$ shp2json ~/citylots.zip 2>/dev/null | head -n5
{
"type": "FeatureCollection",
"features": [
{ "type": "Feature", "properties": { "MAPBLKLOT": "0001001", "BLKLOT": 
"0001001", "BLOCK_NUM": "0001", "LOT_NUM": "001", "FROM_ST": "", "TO_ST": "",
 "STREET": "", "ST_TYPE": "", "ODD_EVEN": "" }, "geometry": { "type": "Polygon",
 "coordinates": [ [ [ -122.422004, 37.808480 ], [ -122.422076, 37.808835 ], 
[ -122.421102, 37.808804 ], [ -122.421063, 37.808601 ], [ -122.422004, 37.808480 ] ] ] } }
,
methods
var toJSON = require('shp2json')

var outStream = toJSON(inStream)

Create a streaming json output stream outStream from the streaming shapefile zip archive inStream.
command-line usage
Usage: shp2json {infile|-} {outfile|-}
install
Make sure you have the unzip command in your PATH.
To install the library, with npm do:
npm install shp2json
and to install the command do:
npm install -g shp2json
license
MIT/X11