geodist - Golang package to compute the distance between two geographic latitude, longitude coordinates

  •        113

GoLang package to compute the distance between two geographic latitude, longitude coordinates. Vincenty is more accurate than Haversine because is considers the Earth's ellipticity when performing the calculation, but takes a longer time to compute.



Related Projects

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).

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.

javascript-mobile-desktop-geolocation - Mobile and Desktop Javascript Library for Geolocation Fallback

  •    Javascript

Mobile and Desktop Javascript Library for Geolocation Fallback. Based on geo-location-javascript framework (

Detect User Geo location


Detect site visitor geo location Detect geo location of the site visitors by html5 geolocation (first) or choice).

jQuery-Store-Locator-Plugin - A store locator plugin using Google Maps API version 3

  •    Javascript

This jQuery plugin takes advantage of Google Maps API version 3 to create an easy to implement store locator. No back-end programming is required, you just need to feed it KML, XML, or JSON data with all the location information. How you create the data file is up to you. I originally created this for a company that didn’t have many locations, so I just used a static XML file. You will need to geocode your locations beforehand or use a geocoding API service if you want to try to do it on the fly. The reason for this is that all free geocoding APIs have strict limits that would easily be exceeded. In the end, you're much better off storing the coordinates versus having to look them up for each location on each request. A note on the distance calculation: this plugin currently uses a distance function that I found on the blog of Chris Pietschmann. Google Maps API version 3 does include a distance calculation service (Google Distance Matrix API) but I decided not to use it because of the current request limits, which seem somewhat low. For v2 I also tried experimenting with the Directions API to request distances but also found the limits to be too restrictive. So, the distance calculation is “as the crow flies” instead of a road distance calculation. However, if you use the inline directions option that does provide the distance that's returned via the directions request.

Haversine Distance Calculation


A very small project that implements the Haversine formula, which calculates the great circle distance between two points on the earth's surface. The points are latitude / longitude coordinates in DD. The formula is implemented client side with javascript and server side with C#.

pgRouting - Extends the PostGIS / PostgreSQL geospatial database to provide geospatial routing functionality

  •    C

pgRouting extends the PostGIS / PostgreSQL geospatial database to provide geospatial routing functionality. Data and attributes can be modified by many clients, like QGIS through JDBC, ODBC, or directly using Pl/pgSQL. The clients can either be PCs or mobile devices. Data changes can be reflected instantaneously through the routing engine. There is no need for precalculation. The “cost” parameter can be dynamically calculated through SQL and its value can come from multiple fields or tables.

Pelias - Modular open-source geocoder using ElasticSearch

  •    Javascript

Pelias is a search engine for places worldwide, powered by open data. It turns addresses and place names into geographic coordinates, and turns geographic coordinates into places and addresses. With Pelias, you’re able to turn your users’ place searches into actionable geodata and transform your geodata into real places. Pelias combines full text search techniques with knowledge of geography to quickly search over many millions of records, each representing some sort of location on Earth.

maptk - Motion-imagery Aerial Photogrammetry Toolkit

  •    C++

MAP-Tk started as an open source C++ collection of libraries and tools for making measurements from aerial video. Initial capability focused on estimating the camera flight trajectory and a sparse 3D point cloud of a scene. These products are jointly optimized via sparse bundle adjustment and are geo-localized if given additional control points or GPS metadata. This project has similar goals as projects like Bundler and VisualSFM. However, the focus here in on efficiently processing aerial video rather than community photo collections. Special attention has been given to the case where the variation in depth of the 3D scene is small compared to distance to the camera. In these cases, planar homographies can be used to assist feature tracking, stabilize the video, and aid in solving loop closure problems.

acr-xamarin-forms - Camera/Gallery, Barcode Scanning, User Dialogs, Geo-Location, Network Utils, Device Info, Settings, E-Mail, Phone, SMS all for Xamarin

  •    CSharp

Camera/Gallery, Barcode Scanning, User Dialogs, Geo-Location, Network Utils, Device Info, Settings, E-Mail, Phone, SMS all for Xamarin.Forms


  •    Javascript

A JavaScript library delivering various geo tasks like geolocation, reverse geocoding and content analysis

Devolia Geo

  •    PHP

Devolia Geo is a RPC (Remote Procedure Call) service offering user geolocation (i.e. the service returns the closest city and country names from latitude and longitude or IP address).

leaflet-geosearch - Leaflet geosearching/geocoding control

  •    Javascript

If you don’t use npm, you may grab the latest UMD build from unpkg (either a development or a production build). The UMD build exports a global called window.GeoSearch if you add it to your page via a <script> tag. We don’t recommend UMD builds for any serious application.

textdistance - Compute distance between sequences

  •    Python

TextDistance -- python library for comparing distance between two or more sequences by many algorithms. Work in progress. Now all algorithms compare two strings as array of bits.

node-maxmind - Maxmind GEO Lookup

  •    Javascript

Pure Javascript module for Geo IP lookup using Maxmind binary databases (aka mmdb or geoip2). Fastest Maxmind lookup library available - up to 17,000% faster than other libraries. Module has 100% test coverage with comprehensive test suite. It natively works with binary Maxmind database format and doesn't require any "CSV - {specific lib format}" conversions as some other modules do. Maxmind binary databases are highly optimized for size and performance so there's no point working with other than that format. You might want to use geolite2 module with free geo databases. Alternatively, free databases available for download here. If you need better accuracy you should consider buying commercial subscription.

Content-generator-sketch-plugin - Sketch app plugin for generating dummy data such as avatars, names, photos, geo data etc

  •    Javascript

Content generator allows you quickly create dummy data such as avatars, names, geo location data etc.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.