where - Geographical utilities for location-based Node.js applications

  •        3

This library provides some basic utilities for building location-based applications.This library is provided under the MIT license. Contributions to the project are welcome on GitHub.



request : ^2.79.0



Related Projects

phpgeo - Simple Geo Library for PHP

  •    PHP

phpgeo provides abstractions to geographical coordinates (including support for different ellipsoids) and allows you to calculate geographical distances between coordinates with high precision. Minimum required PHP version is 7.0.

Nominatim - Open Source search based on OpenStreetMap data

  •    C

Nominatim (from the Latin, 'by name') is a tool to search OpenStreetMap data by name and address (geocoding) and to generate synthetic addresses of OSM points (reverse geocoding). An instance with up-to-date data can be found at https://nominatim.openstreetmap.org. Nominatim is also used as one of the sources for the Search box on the OpenStreetMap home page. The documentation of the latest development version is in the docs/ subdirectory. A HTML version can be found at https://nominatim.org/release-docs/develop/ .

QGIS - Geographical Information System (GIS)

  •    C++

QGIS is an Open Source Geographic Information System. QGIS aims to be an easy to use GIS, providing common functions and features. The initial goal was to provide a GIS data viewer. QGIS has reached that point in its evolution and is being used by many for their daily GIS data viewing and editing needs. QGIS supports a number of raster and vector data formats, with new support easily added using the plugin architecture.

iSniff-GPS - Passive sniffing tool for capturing and visualising WiFi location data disclosed by iOS devices

  •    Python

iSniff GPS passively sniffs for SSID probes, ARPs and MDNS (Bonjour) packets broadcast by nearby iPhones, iPads and other wireless devices. The aim is to collect data which can be used to identify each device and determine previous geographical locations, based solely on information each device discloses about previously joined WiFi networks. iOS devices transmit ARPs which sometimes contain MAC addresses (BSSIDs) of previously joined WiFi networks, as described in [1]. iSniff GPS captures these ARPs and submits MAC addresses to Apple's WiFi location service (masquerading as an iOS device) to obtain GPS coordinates for a given BSSID. If only SSID probes have been captured for a particular device, iSniff GPS can query network names on wigle.net and visualise possible locations.

JCS - Conflates spatial datasets

  •    Java

The JCS Conflation Suite is an API and set of interactive tools which perform conflation on spatial datasets.

geodis - A redis based geo-resolving library

  •    Python

Geodis is a simple and fast python module that allows you to convert IP addresses and latitude/longitude coordinates into geographical locations such as cities, zipcodes and countries. It currently supports cities worldwide, and zipcode areas in the US (of course each of these includes higher level data such as country). But it is written in an extensible way, so that adding a new layer of objects and indexing them is very simple.

laravel-geoip - Determine the geographical location of website visitors based on their IP addresses.

  •    PHP

Determine the geographical location and currency of website visitors based on their IP addresses. Documentation for the package can be found on Lyften.com.

Whitebox Geospatial Analysis Tools - An open-source GIS and remote sensing package

  •    Java

Whitebox GAT is an open-source geographical information system (GIS) and remote sensing package. The Whitebox GAT project began in 2009 and was conceived as a replacement for the Terrain Analysis System (TAS). Whitebox GAT is intended to provide a platform for advanced geospatial data analysis with applications in both environmental research and the geomatics industry more broadly.

Geolib - Growing library to provide some basic geo functions

  •    Javascript

Library to provide basic geospatial operations like distance calculation, conversion of decimal coordinates to sexagesimal and vice versa, etc. Takes 2 or 4 arguments. First 2 arguments must be objects that each have latitude and longitude properties (e.g. {latitude: 52.518611, longitude: 13.408056}). Coordinates can be in sexagesimal or decimal format. 3rd argument is accuracy (in meters). So a calculated distance of 1248 meters with an accuracy of 100 is returned as 1200 (accuracy 10 = 1250 etc.). 4th argument is precision in sub-meters (1 is meter presicion, 2 is decimeters, 3 is centimeters, etc).

Spatial Solr Plugin for Lucene and Solr

  •    Java

With the continuous efforts of adjusting search results to focused target audieces, there's an increasing demand for incorporating geographical location information into the standard search functionality. Spatial Solr Plugin (SSP) is a free, standalone plug-in which enables Geo / Location Based Search, and is built on top of the open source projects Apache Solr and Apache Lucene.

geo-how-to - commands, notes for open-source geo workflows


The tips and tricks here are oriented to BYOD (bring your down data) mapping and OpenStreetMap obliquely. Presentation cartography and basic inventory mapping is the focus here. Spatial analytics is touched upon briefly but is not the main focus. This site makes assumptions that OpenSource GIS mostly means: PostGIS as a spatial data store and Mapnik as a rendering engine, a Mappy CSS styling language like Cascadenik or Carto to setup the layers and their appearance. Interactivity is briefly touched on. Actually embedding the resulting tile assets is briefly touched on.

humanhash - Human-readable digests.

  •    Python

humanhash provides human-readable representations of digests. Don't store the humanhash output, as its statistical uniqueness is only around 1 in 4.3 billion. Its intended use is as a human-readable (and, most importantly, memorable) representation of a longer digest, unique enough for display in a user interface, where a user may need to remember or verbally communicate the identity of a hash, without having to remember a 40-character hexadecimal sequence. Nevertheless, you should keep original digests around, then pass them through humanize() only as you're displaying them.

SharePoint 2010 Google Maps V3 WebPart


This versatile SharePoint 2010 webpart allows you to display geographical points using Google Maps. It can get name, description and coordinates of each point from connected list webpart, configured list or directly from URL. It supports coordinates in many formats.

humanize - python humanize functions

  •    Python

This modest package contains various common humanization utilities, like turning a number into a fuzzy human readable duration ('3 minutes ago') or into a human readable size or throughput. It works with python 2.7 and 3.3 and is localized to Russian, French, Korean and Slovak.You can pass additional parameter path to :func:`activate` to specify a path to search locales in.

ReportGenerator - ReportGenerator converts XML reports generated by OpenCover, PartCover, dotCover, Visual Studio, NCover or Cobertura into human readable reports in various formats

  •    CSharp

ReportGenerator converts XML reports generated by OpenCover, PartCover, dotCover, Visual Studio, NCover or Cobertura into human readable reports in various formats. The reports do not only show the coverage quota, but also include the source code and visualize which lines have been covered.

Nominatim - Open Source search based on OpenStreetMap data

  •    C

Open Source search based on OpenStreetMap data

Geo McFly

  •    Python

On the fly generator of metalinks based on clients' geographical location. Mainly targeted Mandriva Linux, but written in a generic and portable way making it easily usable for other purposes as well.

GRASS GIS - Geographic Resources Analysis Support System

  •    C++

Geographic Resources Analysis Support System, commonly referred to as GRASS GIS, is a Geographic Information System (GIS) used for data management, image processing, graphics production, spatial modelling, and visualization of many types of data. GRASS supports raster and vector data in two and three dimensions. The vector data model is topological, meaning that areas are defined by boundaries and centroids; boundaries cannot overlap within a single layer.