Skip to content

Repository files navigation

@geomelon/data-query

Loader and query interface for Geomelon per-country data packages (@geomelon/<country>). Every generated country package depends on this and re-exports a ready-made dataset instead of a bare JSON array.

Usage

const spain = require('@geomelon/spain')

spain.cities({ name: 'Barcel' })          // prefix match, checks every translation too
spain.cities({ minPopulation: 1000000 })
spain.cities({ regionId: 'region-1', limit: 10 })
spain.city('Q1492')                       // by Geomelon id or Wikidata id
spain.regions({ name: 'Cataluña' })
spain.country                             // country-level fields
spain.meta                                // generatedAt, recordCount, license, source

Or build a dataset directly from a raw payload (e.g. downloaded separately, or from a package whose main you didn't use):

import { createGeomelonDataset } from '@geomelon/data-query'
import data from '@geomelon/spain/data.json'

const spain = createGeomelonDataset(data)

Filters

cities(filter?):

field type matches
name string case-insensitive prefix match against the primary name and every translation
regionId string exact match
minPopulation / maxPopulation number inclusive range
language string city has a translation in this language
settlementType string exact match against one of the city's settlement types
limit number caps the result count

regions(filter?) supports name and limit.

License

MIT (this package's code). The data shipped inside each @geomelon/<country> package is CC0-1.0 — see that package's own LICENSE.

About

Loader and query interface for Geomelon per-country data packages

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages