A blazingly fast GeoJSONL processor to group geographical features
Using pnpm:
pnpm add @devgioele/winged
Using npm:
npm install @devgioele/winged
To group the features of one GeoJSONL file according to the property nation
:
import { groupFeatures } from '@devgioele/winged'
const files = [
{
name: 'source',
path: './some-path-to-the-file.geojsonl'
}
]
const [generatedFiles, malformedFiles] = await groupFeatures(
files,
'./result',
['nation']
)
To group the features of two GeoJSONL files according to the property nation
and convert them to GeoJSON at the same time:
import { groupFeatures } from '@devgioele/winged'
const files = [
{
name: 'some-prefix',
path: './some-path-to-source1.geojsonl'
},
{
name: 'some-prefix',
path: './some-path-to-source2.geojsonl'
}
]
const [generatedFiles, malformedFiles] = await groupFeatures(
files,
'./result',
['nation']
)
The many-to-many processing is achieved by giving to both input files the same name.
Convert the output files to GeoJSON at the same time by enabling the toGeoJson
flag:
import { groupFeatures } from '@devgioele/winged'
const files = [
{
name: 'source',
path: './some-path-to-the-file.geojsonl'
}
]
const [generatedFiles, malformedFiles] = await groupFeatures(
files,
'./result',
['nation'],
{ toGeoJson: true }
)
Install version 16.10 or higher of Node.js. Use node -v
to check your current version.
corepack enable
pnpm install