1.1.1 • Published 3 years ago

@coex/geosearch v1.1.1

Weekly downloads
6
License
MIT
Repository
github
Last release
3 years ago

npm version npm.io

GeoSearch

Simple JavaScript library to find places all around the world

✓ TypeScript / JavaScript

✓ ESM

✓ CommonJS

✓ Node.js

Datasource: Mapy.cz Suggest API

Demo

https://stackblitz.com/edit/geosearch

Install

npm install @coex/geosearch
# yarn add @coex/geosearch

Usage

City, town, village

Let's find all Springfields in the World

import { GeoSearch } from '@coex/geosearch';

const geoSearch = new GeoSearch();

geoSearch
  .suggest('Springfield', {
    scope: 'muni', // Only cities, villages, (municipalities)
  })
  .then((places) => {
    // ... do something cool
    console.log('Results', places);
  })
  .catch((e) => {
    // Catch Error
    console.error('Error', e);
  });

Places start with

Let's find cities or villages start with Ber in Germany

import { GeoSearch } from '@coex/geosearch';

const geoSearch = new GeoSearch();

geoSearch
  .suggest('Ber', {
    scope: 'muni', // Only cities, villages, (municipalities)
    country: 'de', // Only from Germany
  })
  .then((places) => {
    // ... do something cool
    console.log('Results', places);
  })
  .catch((e) => {
    // Catch Error
    console.error('Error', e);
  });

Public transport

Let's find position of public transport station in the Czech Republic

import { GeoSearch } from '@coex/geosearch';

const geoSearch = new GeoSearch();

geoSearch
  .suggest('kokořín', {
    scope: 'pubt', // Only public transport related places
    country: 'cz', // Only from the Czech Republic
  })
  .then((places) => {
    // ... do something cool
    console.log('Results', places);
  })
  .catch((e) => {
    // Catch Error
    console.error('Error', e);
  });

More!

Let's try to find rivers, lakes, mountains, streets, national parks, areas, tourist attractions, ..., everything what awesome Mapy.cz Suggest API can do.

Results (example)

[
  {
    category: 'municipality_cz',
    highlight: [],
    sentence: '',
    userData: {
      bbox: [Array],
      country: 'Česko',
      district: 'Hlavní město Praha',
      elasticWeight: 0,
      evidenceNumber: '',
      hasAddress: true,
      highlight: [Array],
      highlightSecond: [Array],
      houseNumber: '',
      iconType: 'geo',
      id: 3468,
      img: '',
      importance: 0.763394835100681,
      latitude: 50.0835493857,
      longitude: 14.4341412988,
      mmid: '',
      mmsource: '',
      mmtype: '',
      muniId: '3468',
      municipality: 'Praha',
      nuts: 'CZ0100',
      poiType: '',
      poiTypeId: 0,
      popularity: 1,
      premiseIds: [],
      quarter: '',
      region: 'Hlavní město Praha',
      source: 'muni',
      street: '',
      streetNumber: '',
      suggestFirstRow: 'Praha',
      suggestSecondRow: 'okres Hlavní město Praha, kraj Hlavní město Praha, Česko',
      suggestThirdRow: 'Hlavní město',
      ward: '',
      wikiId: 'Q1085',
      zipCode: '',
    },
  },
];

⚙️ Options

OptionTypeDefaultDescription
scope'muni' | 'area' | 'pubt' | 'street'nullPreferred category of results
bounds{ sw: LatLng, ne: LatLng}nullPreffered country boundaries
country'cz' | 'sk' | 'us' | 'de' | 'gb' | 'jp'nullPreferred country. Same as bounds but with some presets. Feel free to add more via pull request
lang'en' | 'cs' | 'de' | 'pl' | 'sk' | 'ru' | 'es' | 'fr'csPreferred language
debugbooleanfalsePrint additional information to console

🤝 Development

Developing and debugging library

yarn start

Run demo locally

You can find and modify it in demo/index.ts file

yarn demo

Run tests

yarn test

📝 License

Data source

Awesome Mapy.cz Suggest API from Seznam.cz

Please read this license before use.

This library

Code of this library is licensed under the MIT license.


© 2022 COex

1.1.1

3 years ago

1.1.0

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.0-next.2

3 years ago

1.0.0-next.3

3 years ago

1.0.0-next.4

3 years ago

1.0.0-next.5

3 years ago

1.0.0-next.6

3 years ago

1.0.0-next.0

3 years ago

1.0.0-next.1

3 years ago

0.6.2

3 years ago

0.6.1

3 years ago

0.6.0

4 years ago

0.5.0

4 years ago

0.4.2

4 years ago

0.4.1

4 years ago

0.4.0

4 years ago

0.4.0-beta.1

4 years ago

0.3.0

5 years ago

0.2.1

5 years ago

0.2.0

5 years ago

0.1.1

5 years ago

0.0.8

5 years ago