geokit
Version:
An assortment of geolocation related tools, all packaged in one easy to use kit.
77 lines (44 loc) • 2.85 kB
Markdown
# geokit
[](https://www.npmjs.com/package/geokit) [](https://bundlephobia.com/result?p=geokit) [](https://github.com/MichaelSolati/geokit/actions?query=workflow%3A%22Lint+and+Test%22) [](https://coveralls.io/github/MichaelSolati/geokit) [](https://david-dm.org/michaelsolati/geokit) [](https://github.com/MichaelSolati/geokit/stargazers) [](https://github.com/MichaelSolati/geokit/network/members)
Full documentation is available at [https://geokit.geofirestore.com](https://geokit.geofirestore.com).
An assortment of geolocation related tools, all packaged in one easy to use kit.
## Methods
### `distance(start: LatLngLiteral, end: LatLngLiteral, unit?: string): number`
Calculates the distance, in kilometers, between two coordinates.
`start` and `end` must be LatLngLiterals `{ lat: 0, lng: 0 }`.
```TypeScript
import * as geokit from 'geokit';
const start = {lat: 41.3083, lng: -72.9279};
const end = {lat: -33.8688, lng: 151.2093};
const distance = geokit.distance(location1, location2); // distance === 16082.811206563834
```
### `hash(coordinates: LatLngLiteral, precision?: number): string`
Generates Geohash of coordinates.
`coordinates` must be LatLngLiterals `{ lat: 0, lng: 0 }`.
```TypeScript
import * as geokit from 'geokit';
const coordinates = {lat: 41.3083, lng: -72.9279};
const hash = geokit.hash(coordinates); // hash === 'drk4urzw2c'
```
### `decodeHash(hash: string): LatLngLiteral`
Decodes a Geohash into its Latitude and Longitude as a LatLngLiteral.
```TypeScript
import * as geokit from 'geokit';
const hash = 'r3gx2f77b';
const coordinates = geokit.decodeHash(hash); // coordinates === {lat: -33.86881113052368, lng: 151.2093186378479}
```
### `validateCoordinates(coordinates: LatLngLiteral): boolean`
Validates coordinates and returns a boolean if valid, or throws an error if invalid.
`coordinates` must be LatLngLiterals `{ lat: 0, lng: 0 }`.
```TypeScript
import * as geokit from 'geokit';
const coordinates = {lat: 41.3083, lng: -72.9279};
const isValid = geokit.validateCoordinates(coordinates); // true
```
### `validateHash(hash: string): LatLngLiteral`
Validates a Geohash and returns a boolean if valid, or throws an error if invalid.
```TypeScript
import * as geokit from 'geokit';
const hash = 'r3gx2f77b';
const isValid = geokit.validateHash(hash); // true
```