
Product
Introducing Data Exports
Export Socket alert data to your own cloud storage in JSON, CSV, or Parquet, with flexible snapshot or incremental delivery.
@terrestris/geojson-walk
Advanced tools
A tiny library to apply a function to a GeoJSON. In case of a
FeatureCollection, the function will also be applied to the single Features.
This can be used to eg. gather statistics about the GeoJSON (spatial extent, attributes, …) or to change / clean it. Have a look at the examples below to get an idea of what is possible.
npm i @terrestris/geojson-walk
This module exposes one function walk:
objectWalk the GeoJSON and apply the provided function to it or its features (in
case of a FeatureCollection). If you expect your function to change the
passed GeoJSON Feature Collection, then pass the third parameter as true.
In that case the return value of the function determines what ends up in the
returned GeoJSON. If you return something truthy, the return value will be
used, otherwise the Feature will not be in the returned collection.
Kind: global function
Returns: object - The (possibly changed) GeoJSON.
| Param | Type | Description |
|---|---|---|
| o | object | The GeoJSON we will walk. We do not check whether this is actually a fully valid GeoJSON. |
| fn | function | The function we will call. Will receive the GeoJSON or each feature of the collection. |
| doExpectChange | boolean | Whether you expect your function might change the GeoJSON. |
Simple usage example:
import walk from '@terrestris/geojson-walk';
const filterForProp = (f) => {
if (f.properties.humpty === 'dumpty') {
return f;
} else {
return null;
}
};
const featureCollection = {
type: 'FeatureCollection',
features: [
{
type: 'Feature',
properties: {
humpty: 'dumpty'
},
geometry: {
type: 'Point',
coordinates: [
0,
1
]
}
},
{
type: 'Feature',
properties: {
humpty: 'trumpty'
},
geometry: {
type: 'Point',
coordinates: [
2,
3
]
}
}
]
};
const cleanCollection = walk(featureCollection, filterForProp, true);
FAQs
Validate and clean GeoJSON
We found that @terrestris/geojson-walk demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 17 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Export Socket alert data to your own cloud storage in JSON, CSV, or Parquet, with flexible snapshot or incremental delivery.

Research
/Security News
Bitwarden CLI 2026.4.0 was compromised in the Checkmarx supply chain campaign after attackers abused a GitHub Action in Bitwarden’s CI/CD pipeline.

Research
/Security News
Docker and Socket have uncovered malicious Checkmarx KICS images and suspicious code extension releases in a broader supply chain compromise.