For a database for maps and geo queries, the first results are tidwall/tile38 (Tile38 is a dedicated geospatial database with spatial indexing, real-time geofencing, and support for points and polygons, making it a strong fit for a spatial database system despite being in-memory and Redis-protocol-based), sqlite/sqlite and mongodb/mongo (MongoDB is a document database that includes built-in support for GeoJSON data types, 2dsphere and 2d spatial indexes, and geospatial query operators $near, $geoWithin, etc., making it a genuine though general-purpose option for storing and querying geographic data). geopandas/geopandas and osgeo/gdal round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Open-source database engines and extensions designed for storing, indexing, and querying complex geographic coordinate data.
Tile38 is an in-memory geospatial database that uses the Redis protocol for communication and query execution. It serves as a distributed spatial store for points and polygons, featuring high availability through leader-follower replication and disk-based persistence. The system includes a real-time geofencing engine that monitors virtual geographic boundaries and triggers webhooks when objects enter or exit specified areas. It further distinguishes itself with an embedded Lua scripting engine for server-side data transformations and a built-in vector tile server for efficient map visualizati
Tile38 is a dedicated geospatial database with spatial indexing, real-time geofencing, and support for points and polygons, making it a strong fit for a spatial database system despite being in-memory and Redis-protocol-based.
SQLite is a serverless relational database engine and C-based library that stores data in a single local disk file. It functions as an embedded SQL database, integrating directly into applications without the need for a separate server process. The engine includes specialized capabilities for full-text search indexing and spatial data querying using R-Tree structures for geographic or geometric coordinate ranges. The system provides broad support for SQL data manipulation, database recovery and repair, and change tracking for synchronizing modifications between databases. It also features a
SQLite is a serverless embedded database engine that includes dedicated R-Tree indexing for spatial querying of geometric coordinates, making it a genuine option for storing and querying spatial data even though it lacks advanced geospatial features like CRS handling or standard format support.
This project is a distributed, document-oriented database system designed to store information in flexible, hierarchical structures. It supports horizontal scaling through automated sharding and maintains high availability across global clusters using a multi-node replication protocol. By executing multi-document operations as atomic units, the system ensures data integrity and consistency across distributed environments. The platform distinguishes itself by integrating advanced vector-based indexing, which enables semantic similarity searches alongside traditional geospatial and lexical quer
MongoDB is a document database that includes built-in support for GeoJSON data types, 2dsphere and 2d spatial indexes, and geospatial query operators ($near, $geoWithin, etc.), making it a genuine though general-purpose option for storing and querying geographic data.
GeoPandas is a Python library that extends pandas with native support for geospatial data. It treats geographic geometries—points, lines, and polygons—as a first-class column type within DataFrames, enabling users to store, manipulate, and analyze vector spatial data alongside traditional tabular attributes. The library is built on top of proven geospatial components: it uses Shapely for all geometric operations, Fiona and GDAL for reading and writing standard spatial file formats, PyProj for coordinate reprojection, and an R‑tree spatial index (from Shapely) to accelerate spatial queries. Wh
GeoPandas is a Python library for manipulating and analyzing geospatial data within pandas DataFrames, but it is not a dedicated database system — it operates on in-memory or file-based data rather than providing a persistent spatial database server.
GDAL is an MIT-licensed open source translator library that provides a unified abstract data model for reading and writing geospatial raster and vector data across hundreds of file formats. It serves as a foundational geospatial data translation library, enabling access to diverse geospatial data formats through a single, consistent interface. The library exposes its core functionality through command-line utilities that allow users to translate, convert, and process geospatial data between formats. A coordinate transformation engine handles conversions between spatial reference systems, whil
GDAL is a library and command-line toolset for reading, writing, and converting geospatial data formats, not a database system for storing, indexing, and querying spatial data—so it supports geospatial formats and coordinate reference systems but lacks the core database capabilities you need.
H3 is an open-source library that provides a hierarchical hexagonal grid system for geospatial indexing. It projects the Earth onto an icosahedron and tiles each face with hexagons to minimize distortion, then encodes each hexagon as a 64-bit integer that stores its resolution and position in the hierarchy. This integer encoding enables fast bitwise operations for grid navigation and spatial analysis. The library offers a comprehensive set of grid topology algorithms for computing neighbor relationships, distances, and paths between cells directly on the hexagonal grid without geographic coor
H3 is a library for geospatial indexing using a hexagonal grid, but it is not a database system — it lacks storage, query engine, and spatial data type management, so it is a building block for spatial databases rather than one itself.
This project provides a SQL interface for Elasticsearch, serving as a translator and database layer that allows users to retrieve, filter, and manipulate indices using structured query language. It functions by converting standard SQL statements into the native JSON query language used by the search engine. The system includes a geospatial SQL engine for executing location-based searches and distance calculations. It also features a query debugger used to visualize the translation process from SQL to search engine request bodies to verify the logic and accuracy of data retrieval. The capabil
This repo provides a geospatial SQL interface for Elasticsearch, enabling location-based queries and distance calculations, but it is a query translator and middleware rather than a standalone spatial database that stores and indexes geographic data itself.
Mapbox GL JS is a WebGL map rendering engine and interactive web map framework used to render vector tiles, raster imagery, and 3D terrain in the browser. It functions as a vector tile map library and geospatial data visualization tool, employing GPU-accelerated shaders to transform geospatial data into interactive maps. The project distinguishes itself through the integration of custom WebGL layers directly into the rendering pipeline and the use of data-driven expressions to map feature properties to visual attributes. It supports specialized data loading via PMTiles and provides offline ma
Mapbox GL JS is a client-side map rendering and visualization library for the browser, not a database — it lacks the persistent storage, indexing, and server-side querying that a spatial database provides.
Cesium is a JavaScript library designed for rendering high-precision 3D globes and 2D maps within web browsers. It functions as a visualization engine that leverages hardware-accelerated graphics to display complex geographic data, terrain, and imagery. The library distinguishes itself through a modular architecture that supports the streaming of massive geographic datasets. By employing tiled data delivery and hierarchical level-of-detail optimization, it maintains performance while navigating large-scale environments. It also includes a time-dynamic state management system, which synchroniz
Cesium is a 3D globe and map visualization engine for the browser, not a database system that stores, indexes, or queries spatial data, so it does not fulfill the core request for a spatial database.
Dawarich is a self-hosted location history manager and travel journaling platform. It functions as a personal travel archive that collects GPS coordinates and movement data, providing a private alternative to proprietary tracking services. The system utilizes a PostgreSQL geospatial database to store coordinates, visits, and custom geofence boundaries. The project distinguishes itself as a geospatial data converter and visualization tool, capable of transforming location history between formats such as GPX, KML, and GeoJSON. It allows users to organize GPS tracks and geotagged photos into nam
Dawarich is a self-hosted location history manager and travel journaling app that uses a PostgreSQL geospatial database internally, but it is not itself a spatial database system for storing, indexing, and querying geographic data efficiently.
OpenAddresses is an open-source geospatial data aggregator and directory that collects public domain and open-license address, parcel, and building datasets from governments and organizations worldwide. It functions as a global index and data warehouse for locating and distributing free geospatial records. The project operates a normalization pipeline that cleans and standardizes diverse source formats into a consistent global coordinate and attribute schema. This process includes a crowdsourced curation pipeline and programmatic quality validation to verify the spatial accuracy and formattin
OpenAddresses is a geospatial data aggregator and directory of address datasets, not a database system you would install to store and query arbitrary spatial data — it collects and normalizes specific address records rather than providing a general-purpose spatial storage and query engine.
OsmAnd is a mobile navigation application and vector map viewer that uses OpenStreetMap data to provide offline map access, turn-by-turn routing, and geospatial tools. It functions as a mobile routing engine and a GPX track recorder, allowing users to navigate and record movement without an active internet connection. The project integrates a mobile interface for contributing to the OpenStreetMap project, enabling users to report map errors and add new points of interest directly from their devices. It also includes a system for visualizing satellite imagery and custom tile overlays on top of
OsmAnd is a mobile navigation app and map viewer, not a spatial database system for storing and querying geospatial data; it consumes existing map data rather than offering a database you can programmatically store, index, or query spatial information with.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| tidwall/tile38 | 9.7K | Go | MIT | |
| sqlite/sqlite | 9.9K | C | NOASSERTION | |
| mongodb/mongo | 28.2K | C++ | other | |
| geopandas/geopandas | 5K | Python | bsd-3-clause | |
| osgeo/gdal | 5.9K | C++ | NOASSERTION | |
| uber/h3 | 6K | C | apache-2.0 | |
| nlpchina/elasticsearch-sql | 7K | Java | Apache-2.0 | |
| mapbox/mapbox-gl-js | 12.3K | TypeScript | NOASSERTION | |
| cesiumgs/cesium | 15.4K | JavaScript | Apache-2.0 | |
| freika/dawarich | 8K | Ruby | agpl-3.0 |