Skip to content

node.js module to geocode through google developer api, geonames or yahoo placefinder

License

Notifications You must be signed in to change notification settings

sylvinus/geocoder

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Geocoder

###Installation:

npm install geocoder

Usage

You can pass a string representation of a location and a callback function to geocoder.geocode. It will accept anything that Google will accept: cities, streets, countries, etc.

###Example:

var geocoder = require('geocoder');

// Geocoding
geocoder.geocode("Atlanta, GA", function ( err, data ) {
  // do something with data
});

// Reverse Geocoding
geocoder.reverseGeocode( 33.7489, -84.3789, function ( err, data ) {
  // do something with data
});

// Setting sensor to true
geocoder.reverseGeocode( 33.7489, -84.3789, function ( err, data ) {
  // do something with data
}, { sensor: true });

// Setting language to German
geocoder.reverseGeocode( 33.7489, -84.3789, function ( err, data ) {
  // do something with data
}, { language: 'de' });


// Selecting another provider to do reverse geocoding
// Currently only geonames and yahoo placefinder are supported
geocoder.selectProvider("geonames",{"username":"demo"});

// Output will be roughly in the same format as Google's
geocoder.reverseGeocode( 33.7489, -84.3789, function ( err, data ) {
  // do something with data
});

// see http://developer.yahoo.com/geo/placefinder/guide/index.html
geocoder.selectProvider("yahoo",{"appid":"xxx"});

// Output will be roughly in the same format as Google's
geocoder.reverseGeocode( 33.7489, -84.3789, function ( err, data ) {
  // do something with data
});



Results will look like standard Google JSON Output

You can pass in an optional options hash as a last argument, useful for setting sensor to true (it defaults to false) and the language (default is empty which means that google geocoder will guess it by geo ip data). For details see the Google Geocoding API Docs

###Testing: nodeunit test

Roadmap

  • Complete Test Suite
  • Better options handling

Further Reading

About

node.js module to geocode through google developer api, geonames or yahoo placefinder

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%