Skip to content

zeke/hoods

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hoods

Give me a lng/lat and I'll give you a neighborhood.

See hoods-as-a-service.herokuapp.com for examples and an HTML5 geolocation demo.

For a list of included cities and neighborhood names, see names.md. If your city is not represented, please ask Zillow nicely for more data.

Notes

  • This module doesn't make any network requests.
  • All the data is in the module itself. It's under 50MB.
  • The neighborhoods boundary data comes from Zillow.
  • Data was converted from shapefiles to GeoJSON using gdal.
  • The point-in-polygon function is powered by turf.
  • If the given point is in more than one neighborhood, all matches are returned.
  • Data is only for US

Installation

Download node at nodejs.org and install it, if you haven't already.

npm install hoods --save

Usage

const hoods = require("hoods")
const assert = require('assert')

var hood = hoods(-90.132093, 29.934436)[0]

assert.equal(hood.name, 'Black Pearl')
assert.equal(hood.city, 'New Orleans')
assert.equal(hood.county, 'Orleans')
assert.equal(hood.state, 'LA')
assert(hood.region_id)
assert(hood.geometry)

Tests

npm install
npm test

Dependencies

  • lodash.flatten: The modern build of lodash’s _.flatten as a module.
  • require-dir: Helper to require() directories.
  • turf: a node.js library for performing geospatial operations with geojson

Dev Dependencies

  • mocha: simple, flexible, fun test framework
  • standard: JavaScript Standard Style

License

MIT

Special thanks to Zillow for the data and Mapbox for guidance.

Generated by package-json-to-readme

About

Give me a lng/lat and I'll give you a neighborhood

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published