◐𝕏XGitHubLinkedInRSSGuestbookArchives
← Back
July 30, 2026

GeoLibre: Open-source GIS platform for browsers, desktop, mobile

Explore GeoLibre, a free, cloud-native GIS for visualizing and analyzing geospatial data in your browser, desktop, or mobile—no installation needed.

GeoLibre is a free and open-source, lightweight, cloud-native GIS platform that runs in your web browser, as a desktop app, on mobile, and even inside Jupyter notebooks. It's built on modern web technologies—MapLibre GL JS, DuckDB-WASM Spatial, deck.gl, and Tauri—so you get a responsive, full-featured map viewer without sacrificing privacy: your data stays local.

What is GeoLibre?

GeoLibre is an open-source geographic information system (GIS) designed for the cloud-native era. Unlike traditional desktop GIS that require heavy installation, GeoLibre runs anywhere: in the browser at web.geolibre.app, as a desktop app for Windows, macOS, and Linux, as a native Android app on Google Play, and as a Python package for Jupyter. It supports vector tiles, 3D Tiles, GeoJSON, Shapefile, CSV, and many other formats. With built-in spatial SQL via DuckDB-WASM and over 700 geoprocessing tools, it's surprisingly capable for a client-only app.

A world map with multiple data layers displayed in GeoLibre's interface

Why it stands out

For years, the GIS world has been split between heavy desktop applications like QGIS and lightweight web maps that limit analysis. Analysts, students, and developers working with geospatial data often need a middle ground: something that runs quickly, works offline, and handles real analysis without sending data to a server. GeoLibre fills this gap. It's especially useful for prototyping map visualizations, teaching geospatial concepts, or doing quick field analysis on a mobile device—all without upfront installation or cloud costs.

How it works

GeoLibre's architecture is layered:

  • Rendering layer: MapLibre GL JS handles 2D and 3D map rendering, including 3D Tiles and terrain. deck.gl adds high-performance data overlays.
  • Data engine: DuckDB-WASM Spatial runs SQL queries directly in the browser or Tauri app, enabling spatial joins, filtering, and aggregations with zero server calls.
  • Desktop/mobile shell: Tauri v2 wraps the web app into native desktop and Android apps, providing file system access and offline capability.
  • Python integration: The same map component can be used inside Jupyter notebooks via the geolibre Python package, bridging exploratory data analysis and interactive mapping.
  • Plugin system: Users can extend functionality via plugins hosted on a plugin marketplace.

Quick start

Getting started is trivial. Open the web app at web.geolibre.app—no install required. For a more permanent setup, install the Python package:

pip install geolibre

Then run this in a Jupyter notebook cell:

from geolibre import Map
m = Map()
m.add_basemap("OpenStreetMap")
m.add_geojson("https://raw.githubusercontent.com/opengeos/GeoLibre/main/examples/data/cities.geojson")
m

That's it. You'll see an interactive map with a basemap and cities layer. All data stays local.

Real-world example

Load New York City building footprints from a public dataset and extrude them by height. This example uses GeoLibre's web app, but the same steps work in desktop or Jupyter.

  1. Open web.geolibre.app.
  2. In the Layers panel, click "Add Layer" > "GeoJSON" and paste this URL: https://files.opengeos.org/nyc_buildings.geojson
  3. In the layer styling, enable "3D Extrusion" and set the height property to height.
  4. Adjust the color ramp and altitude scale.

For the same result using the Python API, you can write a script that loads the GeoJSON and applies extrusion styling. All processing happens locally.

Pros and cons

Pros

  • Runs everywhere: web, desktop, mobile, Jupyter.
  • Truly local: no data sent to servers.
  • Fast 3D rendering and vector tile support.
  • Built-in SQL engine for analysis.
  • Extensive format support and geoprocessing tools.
  • Active open-source community (MIT license).

Cons

  • Limited to WASM and browser APIs—can't match native performance for very large datasets.
  • Plugin ecosystem still emerging.
  • Desktop version requires Tauri runtime (bundled in installers).
  • Some advanced GIS functions (like network analysis) are missing.

Alternatives

  • QGIS: The gold standard for open-source desktop GIS. Heavier, but more mature and extensible via Python plugins.
  • Kepler.gl: A powerful open-source geospatial analytics tool for large datasets, but web-only and less focused on editing.
  • MapLibre GL JS: A library, not an application—ideal if you want to build your own map UI, but not a ready-to-use GIS.

My verdict

Use GeoLibre if you need a fast, local-first GIS for everyday mapping, quick analysis, or teaching—especially if you value privacy and cross-platform support. Skip it if your workflow requires heavy geoprocessing on huge datasets or deep desktop integration (QGIS is better). For everyone else, GeoLibre is a remarkable tool that brings cloud-native architecture to the open-source GIS world without compromise.

Share on Twitter
← Back to all posts