node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป


Planet Places

Install with npm:

npm install @planet/places


Get a list of places that match the given query string. Returns a list of objects sorted by quality. Each place has an id and name property. For states and regions, the admin property gives the country name.


Get a place given a Wikidata identifier.


Fetch a GeoJSON feature representing the place. Returns a promise that resolves to feature. The id should come from a place result returned from the places.match() or places.wikidata() functions.


Set the URL root for fetching places. By default, places.fetch() will fetch features using the URL root To work with data hosted at a different location, call places.setUrl(root) with the URL root of the alternative location.


To download and prepare the data:

make features

To simplify the data and create the lookup:

make lookup

Known limitations

  • Only features that have a common identifier are extracted from the original Natural Earth dataset. See the bin/explode script for the code that tries to find a common identifier.
  • Not all features are augmented with a Wikidata identifier (the bin/augment script tries to assign these).
  • Not all geometries can be simplified below the set threshold (see bin/simplify for details).