Open-source geospatial software
275 open-source libraries, tools and applications tagged geospatial, ranked by how closely geospatial is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
275 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| Esri Leaflet Esri Leaflet is a lightweight set of Leaflet plugins for consuming ArcGIS Online and ArcGIS Server services in web mapping applications. It… | 44 | 1699 | active |
| osm2pgsql-dev/osm2pgsql osm2pgsql is a command-line ETL tool that imports OpenStreetMap data in OSM, PBF, and O5M formats into a PostgreSQL/PostGIS database. It su… | 83 | 1685 | stable |
| itorr/china-ex A web-based 'China Conquest' generator that lets users mark all 34 Chinese provincial-level regions with visit levels (lived, stayed, trave… | 32 | 1677 | stable |
| Agontuk/react-native-geolocation-service A React Native library providing a drop-in replacement for the built-in Geolocation API, using Google Play Services' FusedLocationProviderC… | 32 | 1668 | stable |
| albar965/littlenavmap Little Navmap is a free open-source desktop flight planner, navigation tool, moving map, and airport information system for flight simulato… | 77 | 1623 | stable |
| SciTools/cartopy Cartopy is a Python package for cartographic projections and map drawing, built on top of Matplotlib, Pyproj, and Shapely. It provides obje… | 85 | 1620 | stable |
| felt/tippecanoe Tippecanoe is a C++ command-line tool that builds vector tilesets (MBTiles) from large collections of GeoJSON, FlatGeobuf, or CSV features.… | 77 | 1619 | active |
| mjaschen/phpgeo phpgeo is a PHP library providing abstractions for geographical coordinates, polylines, polygons, and bounds with support for different ell… | 72 | 1614 | active |
| uMap uMap is a free, open-source web application for quickly creating custom maps with OpenStreetMap layers and embedding them in websites. It i… | 95 | 1607 | active |
| mourner/flatbush Flatbush is a very fast static spatial index for 2D points and rectangles in JavaScript, implementing a packed Hilbert R-tree. It supports … | 81 | 1601 | stable |
| Mapsui/Mapsui Mapsui is a .NET map component library for embedding interactive maps in applications built with MAUI, Avalonia, Uno Platform, Blazor, WPF,… | 100 | 1578 | active |
| bjornharrtell/jsts JSTS is a JavaScript library of spatial predicates and functions for processing geometry conforming to the OGC Simple Features Specificatio… | 23 | 1563 | stable |
| mapbox/polylabel A fast JavaScript (and C++) library implementing an iterative grid algorithm to find the pole of inaccessibility of a polygon — the interna… | 74 | 1558 | stable |
| cgeo/cgeo c:geo is an open-source, full-featured Android client for geocaching.com with basic support for other geocaching platforms like Opencaching… | 99 | 1545 | active |
| sobri909/LocoKit LocoKit is a Swift framework for iOS that combines Core Location and Core Motion recording with machine learning based activity type detect… | 25 | 1541 | active |
| pysal/pysal PySAL is an open-source Python library for geospatial data science with an emphasis on geospatial vector data, distributed as a meta-packag… | 82 | 1526 | active |
| libgeos/geos GEOS is a C/C++ library for computational geometry on 2D vector geometries, implementing the OGC Simple Features standard. It is a port of … | 98 | 1515 | stable |
| Tegola Tegola is an open-source Mapbox Vector Tile (MVT) server written in Go that slices geospatial data from PostGIS, GeoPackage, or SAP HANA in… | 79 | 1502 | active |
| GEOSwift/GEOSwift A type-safe Swift library wrapping the OSGeo GEOS library for handling geometric objects (points, linestrings, polygons) and topological op… | 83 | 1501 | active |
| rt-bishop/Look4Sat Look4Sat is an open-source, ad-free satellite tracker and pass predictor for Android, inspired by Gpredict. It calculates satellite positio… | 96 | 1497 | active |
| OpenCPN/OpenCPN OpenCPN is a cross-platform, open-source chartplotter and navigation application for vessels, displaying BSB raster and S57 vector charts. … | 90 | 1496 | stable |
| placemark/placemark Placemark is a free, open-source web application for creating, viewing, editing, and analyzing geospatial map data, built with MapLibre GL … | 82 | 1462 | active |
| tinyworldmap/tiny-world-map A tiny, self-contained world map library for offline-first and low-bandwidth web apps, designed to work with Leaflet. It renders all zoom l… | 25 | 1454 | active |
| r-spatial/sf sf is an R package providing Simple Features access for vector geospatial data, representing geometries as list-columns in data frames. It … | 66 | 1450 | stable |
| pgRouting pgRouting is a C/C++ PostgreSQL extension that adds geospatial routing and network analysis functions on top of PostGIS/PostgreSQL. It prov… | 92 | 1435 | stable |
| michalchudziak/react-native-geolocation The React Native community geolocation module providing the Geolocation web spec API for React Native apps. It supports iOS, Android, and w… | 23 | 1434 | active |
| tess1o/geopulse GeoPulse is a self-hosted, privacy-first web application that turns raw GPS points from trackers like OwnTracks, Overland, Traccar, and GPS… | 79 | 1421 | active |
| MovingPandas MovingPandas is a Python library for movement data exploration and analysis, providing trajectory data structures built on Pandas, GeoPanda… | 93 | 1415 | active |
| thephpleague/geotools A PHP 7.3+ geo-related library built atop Geocoder and React, providing batch geocoding, coordinate conversion, distance/bearing computatio… | 62 | 1408 | active |
| ideal-postcodes/postcodes.io Postcodes.io is a free, open-source UK postcode lookup and geocoding API serving ONS Postcode Directory, Ordnance Survey Open Names, and Sc… | 98 | 1406 | active |
| QField QField is a touch-optimized mobile and desktop application that provides a simplified interface for QGIS, enabling field data collection an… | 95 | 1389 | active |
| locationtech/geotrellis GeoTrellis is a Scala library and framework for high-performance reading, writing, and processing of geospatial raster and vector data. It … | 82 | 1377 | stable |
| TerriaJS TerriaJS is a TypeScript library for building rich, web-based geospatial data explorers with 2D and 3D visualization, powered by Cesium/Web… | 77 | 1371 | active |
| farmOS farmOS is a web-based, self-hosted application for farm management, planning, and record keeping, built on Drupal. It provides a standard, … | 99 | 1366 | stable |
| Baseflow/flutter-geolocator A Flutter geolocation plugin providing access to device location services across Android, iOS, macOS, web, and Windows via a federated plug… | 76 | 1336 | stable |
| googlemaps/android-maps-compose A set of Jetpack Compose composable functions and data types wrapping the Google Maps SDK for Android. It lets developers declaratively bui… | 99 | 1319 | stable |
| tomchentw/react-google-maps A React component library that wraps the Google Maps JavaScript API, providing declarative components like GoogleMap, Marker, InfoWindow, a… | 32 | 4626 | maintenance |
| mapsme/omim MAPS.ME is an open-source cross-platform offline maps application built on OpenStreetMap data, with the core engine written in C++ and apps… | 23 | 4599 | maintenance |
| efremidze/Cluster Cluster is a Swift library for iOS that aggregates MapKit map annotations into clusters using an efficient QuadTree algorithm. It supports … | 33 | 1292 | stable |
| hishizuka/pizero_bikecomputer An open-source DIY bike computer application for Raspberry Pi Zero that combines GPS tracking, ANT+ sensor integration, offline maps, and r… | 77 | 1281 | active |
| iTowns/itowns iTowns is a Three.js-based JavaScript/WebGL framework for visualizing 2D and 3D geospatial data in the browser. It supports OGC protocols a… | 72 | 1273 | active |
| Mapbox Maps SDK A C++ core library that renders interactive, customizable vector maps in native Android, iOS, macOS, Node.js, and Qt applications using Ope… | 10 | 4457 | maintenance |
| tumic0/GPXSee GPXSee is a Qt-based GPS log file viewer and analyzer supporting all common GPS log formats (GPX, TCX, FIT, KML, NMEA, IGC, and many more) … | 97 | 1247 | active |
| CesiumGS/cesium-unreal Cesium for Unreal is an open-source Unreal Engine plugin that brings the 3D geospatial ecosystem into Unreal Engine, providing a full-scale… | 98 | 1246 | active |
| pyproj4/pyproj pyproj is a Python interface to the PROJ library for cartographic projections and coordinate transformations. It lets Python applications c… | 86 | 1231 | stable |
| MapServer/MapServer MapServer is an open-source geographic data rendering engine written in C for publishing spatial data and interactive mapping applications … | 98 | 1229 | stable |
| chrisveness/geodesy A JavaScript library of geodesy functions covering distances, bearings, and coordinate conversions on spherical and ellipsoidal earth model… | 32 | 1227 | stable |
| lesnolie/movecar A smart car-blocking notification system built on Cloudflare Workers that lets people scan a QR code on a parked car to notify the owner vi… | 40 | 1182 | active |
| OSGeo/grass GRASS GIS is a free and open-source geospatial processing engine for raster, vector, and imagery analysis, usable as a desktop GIS or headl… | 80 | 1179 | stable |
| grote/Transportr Transportr is a free, open-source Android app for public transport navigation that works without ads or tracking. It provides trip routing,… | 72 | 1169 | active |
| SamR1/FitTrackee FitTrackee is a self-hosted web application for tracking outdoor workouts and activities from GPX and other exported files, with maps, char… | 96 | 1167 | active |
| Lyokone/flutterlocation A Flutter plugin providing a unified Dart API for accessing device GPS location across Android, iOS, macOS, Web, Windows, and Linux. It sup… | 90 | 1159 | stable |
| GeospatialPython/pyshp PyShp is a pure Python library for reading and writing ESRI Shapefiles without any external dependencies. It supports geometry and attribut… | 95 | 1157 | stable |
| andrewjiang/palantir-for-family-trips A React-based dashboard application that treats family trip planning like a Palantir-style operations command center, with convoy routes, t… | 46 | 1144 | active |
| seadog007/smc.peering.tw An interactive web dashboard that maps Taiwan's submarine cables, showing cable routes, landing points, and real-time incident status. Buil… | 68 | 1132 | active |
| paulmach/orb Orb is a Go library defining types for 2D geo and plan/projected geometry, with sub-packages for GeoJSON, Mapbox Vector Tile encoding, WKB … | 63 | 1132 | stable |
| smeijer/leaflet-geosearch A TypeScript geocoding library that adds address lookup (geosearch) to web applications, with ready-made controls for embedding in Leaflet … | 64 | 1129 | active |
| openwisp/django-rest-framework-gis A Python library providing geographic add-ons (GeoJSON serializers, geometry fields, spatial filters) for Django REST Framework. It is main… | 84 | 1126 | active |
| JamesLMilner/terra-draw Terra Draw is a TypeScript library for drawing shapes and geometries on web maps, with built-in adapters for Leaflet, OpenLayers, MapLibre … | 99 | 1117 | active |
| GPX Tools gpxpy is a Python library for parsing, manipulating, and generating GPX (GPS eXchange Format) XML files. It supports GPX 1.0 and 1.1 and pr… | 75 | 1107 | stable |
| mapbox/mapbox-gl-draw A Mapbox GL JS plugin that adds drawing and editing controls for geographic features (points, lines, polygons) directly on interactive web … | 87 | 1092 | active |
| h9zdev/GeoSentinel GeoSentinel is a geospatial monitoring platform that tracks global movement in real time, aggregating ship and flight routes, live coordina… | 57 | 1087 | active |
| flutter-mapbox-gl/maps A community-driven Flutter plugin that embeds interactive, customizable Mapbox vector maps in Flutter apps on Android, iOS, and web. It wra… | 24 | 1062 | active |
| RGeo RGeo is a geospatial data library for Ruby implementing the OGC Simple Features Specification. It represents geometric objects like points,… | 64 | 1060 | active |
| cyang-kth/fmm FMM is an open-source map matching framework in C++ with Python bindings that aligns noisy GPS trajectories to road networks using hidden M… | 23 | 1057 | active |
| geotiffjs/geotiff.js geotiff.js is a pure JavaScript library for parsing TIFF and GeoTIFF files, reading geospatial metadata and raw raster data in both browser… | 86 | 1055 | active |
| ubilabs/react-geosuggest A React autosuggest component for the Google Maps Places API, allowing users to search and select places with optional custom default sugge… | 10 | 1039 | active |
| opengeos/streamlit-geospatial A multi-page Streamlit web application showcasing geospatial applications, including interactive mapping and real estate data/market trend … | 66 | 1029 | active |
| maxmind/libmaxminddb A C library for reading MaxMind DB files, the binary format used by MaxMind's GeoIP databases. It provides fast IP address lookups with fle… | 96 | 1026 | stable |
| ElemeFE/vue-amap A Vue 2.x component library wrapping the AMap (Gaode) JavaScript API, providing declarative map components like markers, polylines, polygon… | 32 | 3385 | maintenance |
| mapbox/tippecanoe A C++ command-line tool that builds vector tilesets from large collections of GeoJSON, Geobuf, or CSV features. It creates scale-independen… | 60 | 3133 | maintenance |
| zaaach/CityPicker An Android library providing a city selection dialog with alphabetical index bar, hot cities, pinyin/name search, and a pluggable location … | 23 | 3123 | maintenance |
| googollee/eviltransform A multi-language library that converts coordinates between WGS-84 (GPS) and GCJ-02 (the offset coordinate system used by Chinese map servic… | 32 | 2596 | maintenance |
| Dafrok/vue-baidu-map A Vue 2.x component library wrapping the Baidu Maps JavaScript API, providing declarative map components like <baidu-map> with markers, ove… | 32 | 2404 | maintenance |
| apneadiving/Google-Maps-for-Rails Gmaps4rails is a Ruby library that makes it easy to create Google Maps with overlays such as markers, infowindows, and KML layers in Ruby (… | 32 | 2248 | maintenance |
| sebholstein/angular-google-maps AGM (Angular Google Maps) is a set of Angular 2+ components that wrap the Google Maps JavaScript API, letting developers embed maps with de… | 10 | 2023 | maintenance |
| alex3165/react-mapbox-gl A React component library that wraps mapbox-gl-js, providing declarative React components for rendering interactive WebGL maps. It exposes … | 23 | 1985 | maintenance |
| vue-leaflet/Vue2Leaflet Vue2Leaflet is a JavaScript library providing Vue 2 components that wrap Leaflet for building reactive maps. It offers components like LMap… | 23 | 1954 | maintenance |
| thampiman/reverse-geocoder A fast, offline Python library for reverse geocoding that converts latitude/longitude coordinates into the nearest city, country code, and … | 23 | 1909 | maintenance |
| plant99/felicette A Python CLI tool that downloads publicly available satellite imagery (e.g., Landsat/Sentinel) for given coordinates or a location name and… | 10 | 1841 | maintenance |
| googlemaps/google-maps-services-java A Java client library for Google Maps API Web Services, covering Directions, Distance Matrix, Elevation, Geocoding, Maps Static, Places, Ro… | 67 | 1800 | maintenance |
| jpatokal/openflights OpenFlights is a web application for logging flights, rendering them on a zoomable world map, and automatically calculating travel statisti… | 77 | 1678 | maintenance |
| DenisCarriere/geocoder A simple and consistent Python geocoding library that provides a unified interface to many geocoding providers such as Google, Bing, OpenCa… | 23 | 1657 | maintenance |
| mrmans0n/smart-location-lib An Android library that simplifies location updates, geofencing, and activity recognition through a fluent API built on Google Play Service… | 32 | 1638 | maintenance |
| Geokit Geokit is a Ruby gem providing geocoding via multiple providers (Google, Bing, OpenStreetMap, Mapbox, etc.) plus distance, heading, midpoin… | 32 | 1626 | maintenance |
| simplegeo/polymaps Polymaps is a free JavaScript library for creating dynamic, interactive 'slippy' maps in modern web browsers using SVG. It extends the tile… | 32 | 1598 | maintenance |
| mmcloughlin/globe A Go library for rendering wireframe globe visualizations as PNG images, backed by the pinhole 3D camera library. It supports drawing grati… | 32 | 1594 | maintenance |
| fossasia/geolocation A small FOSSASIA web application that lets users look up their geolocation coordinates via a 'Get my geolocation' button and copy them for … | 32 | 1501 | maintenance |
| tombatossals/angular-leaflet-directive An AngularJS directive that makes it easy to embed and interact with Leaflet-managed interactive maps in web applications. It wraps the Lea… | 23 | 1489 | maintenance |
| wwenj/tripRecord A mobile web application called Kaka Chuxing (tripRecord) for recording personal trips, planning public transit routes, and visualizing tra… | 32 | 1473 | maintenance |
| w3reality/three-geo three-geo is a three.js-based geographic visualization library that builds satellite-textured 3D terrain models in near real-time from GPS … | 23 | 1417 | maintenance |
| hibiken/react-places-autocomplete A React component for building customized Google Maps Places Autocomplete dropdowns, with utility functions for geocoding addresses to lati… | 23 | 1374 | maintenance |
| react-native-background-geolocation A React Native plugin providing background and foreground geolocation tracking, forked from a Cordova plugin. It supports battery-saving ci… | 32 | 1354 | maintenance |
| qiuxiang/react-native-amap3d A React Native map component library wrapping the AMap (Gaode) 3D SDK for Android and iOS. It provides declarative map views with markers, … | 23 | 1342 | maintenance |
| Travel Mate Travel Mate is an open-source Android travel guide app that helps users choose destinations, make bookings, and organize trips. It provides… | 23 | 1340 | maintenance |
| bramus/react-native-maps-directions A React Native component that draws routes between two coordinates on top of react-native-maps, powered by the Google Maps Directions API. … | 32 | 1280 | maintenance |
| ResidentMario/geoplot geoplot is a high-level Python geospatial plotting library built as an extension to cartopy and matplotlib, described as 'like seaborn for … | 23 | 1215 | maintenance |
| Whitebox WhiteboxTools is an advanced geospatial data analysis platform offering a stand-alone command-line program and Python scripting API for GIS… | 57 | 1213 | maintenance |
| AndrewHartAR/ARKit-CoreLocation A Swift library that combines ARKit's high-accuracy local tracking with CoreLocation's global GPS positioning, letting developers place AR … | 57 | 5525 | experimental |
| perliedman/leaflet-routing-machine A Leaflet plugin that adds turn-by-turn routing controls to interactive maps, supporting multiple routing backends like OSRM and Mapbox Dir… | 23 | 1185 | maintenance |