Skip to content

Commit e5c9456

Browse files
authored
chore(release): v2.1.0 (#1230)
* chore(release): v2.1.0 * Address Claude review feedback - Regenerate package-lock.json so its root and workspace version entries match the 2.1.0 bump in package.json; without this, CI's `npm ci` fails with an out-of-sync lockfile error. * docs: update project status on homepage for v2.1 - Bump "GeoLibre 2.0 is a stable release" to 2.1 and add a Version 2.1 summary sentence (Browser panel, route animation, object detection, map recording, photo viewer, Wikipedia cards, planetary basemaps, OpenAerialMap plugin) to the docs homepage Project status section.
1 parent 8c35a98 commit e5c9456

16 files changed

Lines changed: 47 additions & 28 deletions

File tree

CITATION.cff

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ authors:
99
email: giswqs@gmail.com
1010
affiliation: "University of Tennessee, Knoxville, USA"
1111
orcid: "https://orcid.org/0000-0001-5437-4073"
12-
version: 2.0.0
13-
date-released: 2026-07-10
12+
version: 2.1.0
13+
date-released: 2026-07-13
1414
doi: 10.5281/zenodo.20785400
1515
repository-code: "https://github.com/opengeos/GeoLibre"
1616
url: "https://geolibre.app"

README.md

Lines changed: 9 additions & 5 deletions
Large diffs are not rendered by default.

apps/geolibre-desktop/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "geolibre-desktop",
3-
"version": "2.0.0",
3+
"version": "2.1.0",
44
"private": true,
55
"type": "module",
66
"scripts": {

apps/geolibre-desktop/src-tauri/Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

apps/geolibre-desktop/src-tauri/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "geolibre-desktop"
3-
version = "2.0.0"
3+
version = "2.1.0"
44
description = "GeoLibre Desktop — lightweight cloud-native desktop GIS"
55
authors = ["GeoLibre Contributors"]
66
edition = "2021"

apps/geolibre-desktop/src-tauri/tauri.conf.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"$schema": "https://schema.tauri.app/config/2",
33
"productName": "GeoLibre Desktop",
4-
"version": "2.0.0",
4+
"version": "2.1.0",
55
"identifier": "org.geolibre.desktop",
66
"build": {
77
"beforeDevCommand": "npm run dev",

docs/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,4 +159,4 @@ Other parameters control the toolbar, panels, and theme. See [Embedding & Sharin
159159

160160
## Project status
161161

162-
GeoLibre 2.0 is a stable release. It includes the map workspace, the `.geolibre.json` project format with Save, Open, and Share, the plugin API, and the plugin marketplace for installing, updating, and removing external plugins. Data support spans browser vector import, DuckDB-WASM Spatial loading, the full Add Data surface (files, web services, cloud formats, 3D layers, and databases), and cloud integrations through the Planetary Computer and Earth Engine panels, the Overture Maps plugin, and the federal Web Services plugins. Processing covers the vector tools (Turf.js with an optional GeoPandas sidecar), the raster tools (rasterio sidecar with a client-side fallback), a Spectral Index toolbox, a Raster Georeferencer, a Spatial Statistics toolbox, network analysis (isochrones, service areas, OD cost matrices), the Conversion menu (GeoParquet, FlatGeobuf, PMTiles, COG), the Whitebox toolbox, AI Segmentation via SamGeo/SAM 3, and the SQL Workspace for DuckDB Spatial SQL (with PGlite PostGIS and Apache Sedona engines). The release also ships a docked Notebook panel that runs Jupyter beside the map (JupyterLite on the web, a desktop JupyterLab server), a Field Collection tool for capturing point, line, and polygon observations, real-time multi-user collaboration, a scroll-driven story map builder, a natural-language AI assistant and in-app Python Console, multi-provider geocoding, the Time Slider plugin, a Controls menu (Measure, Bookmark, Minimap, View State), a Print menu, Layout settings, runtime environment variables, diagnostics, embed-friendly URL parameters including the `maponly` mode, cross-platform installers (including a macOS Homebrew Cask and a Windows Microsoft Store listing), and Docker support for the browser app. GeoLibre also ships as a native **Android** app built from the same codebase via Tauri v2 mobile (see [Android](android.md)), with a responsive touch layout for phones, and offline improvements (a Download Offline Area tool plus service-worker caching of the CDN-loaded Pyodide and PGlite/PostGIS engines). Version 2.0 adds a CesiumJS 3D globe view for any map pane, planetary mapping (Mars and the Moon from OpenPlanetaryMap, plus Mercury, Venus, the Galilean moons, Titan, Pluto, and Charon from USGS Astrogeology reprojected to Web Mercator, with a per-project ellipsoid and a planet switcher in the Layers panel), symbology interchange that imports and exports vector styling as OGC SLD, QGIS QML, and Mapbox GL style JSON, editable source layers that write vector edits back to GeoPackage, GeoJSON, and PostGIS, a Weather menu with live cloud and precipitation radar overlays and a sun position simulation, and new Mapillary, Historical Imagery, and Elevation Profile plugins. See the [roadmap](roadmap.md) for the full release history and what comes next.
162+
GeoLibre 2.1 is a stable release. It includes the map workspace, the `.geolibre.json` project format with Save, Open, and Share, the plugin API, and the plugin marketplace for installing, updating, and removing external plugins. Data support spans browser vector import, DuckDB-WASM Spatial loading, the full Add Data surface (files, web services, cloud formats, 3D layers, and databases), and cloud integrations through the Planetary Computer and Earth Engine panels, the Overture Maps plugin, and the federal Web Services plugins. Processing covers the vector tools (Turf.js with an optional GeoPandas sidecar), the raster tools (rasterio sidecar with a client-side fallback), a Spectral Index toolbox, a Raster Georeferencer, a Spatial Statistics toolbox, network analysis (isochrones, service areas, OD cost matrices), the Conversion menu (GeoParquet, FlatGeobuf, PMTiles, COG), the Whitebox toolbox, AI Segmentation via SamGeo/SAM 3, and the SQL Workspace for DuckDB Spatial SQL (with PGlite PostGIS and Apache Sedona engines). The release also ships a docked Notebook panel that runs Jupyter beside the map (JupyterLite on the web, a desktop JupyterLab server), a Field Collection tool for capturing point, line, and polygon observations, real-time multi-user collaboration, a scroll-driven story map builder, a natural-language AI assistant and in-app Python Console, multi-provider geocoding, the Time Slider plugin, a Controls menu (Measure, Bookmark, Minimap, View State), a Print menu, Layout settings, runtime environment variables, diagnostics, embed-friendly URL parameters including the `maponly` mode, cross-platform installers (including a macOS Homebrew Cask and a Windows Microsoft Store listing), and Docker support for the browser app. GeoLibre also ships as a native **Android** app built from the same codebase via Tauri v2 mobile (see [Android](android.md)), with a responsive touch layout for phones, and offline improvements (a Download Offline Area tool plus service-worker caching of the CDN-loaded Pyodide and PGlite/PostGIS engines). Version 2.0 adds a CesiumJS 3D globe view for any map pane, planetary mapping (Mars and the Moon from OpenPlanetaryMap, plus Mercury, Venus, the Galilean moons, Titan, Pluto, and Charon from USGS Astrogeology reprojected to Web Mercator, with a per-project ellipsoid and a planet switcher in the Layers panel), symbology interchange that imports and exports vector styling as OGC SLD, QGIS QML, and Mapbox GL style JSON, editable source layers that write vector edits back to GeoPackage, GeoJSON, and PostGIS, a Weather menu with live cloud and precipitation radar overlays and a sun position simulation, and new Mapillary, Historical Imagery, and Elevation Profile plugins. Version 2.1 adds a QGIS-style Browser panel (Data Source Manager) for browsing services, PostGIS databases, local files, and favorites from one place; route animation that sends a marker along a line layer with 3D track-follow camera controls and MP4 export; in-browser ONNX/YOLO object detection; map recording of the canvas or a drawn bounding box to video; a native-resolution geotagged photo viewer; Wikipedia knowledge cards; USGS basemaps for nine more celestial bodies; and a new OpenAerialMap imagery search plugin. See the [roadmap](roadmap.md) for the full release history and what comes next.

docs/roadmap.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@
299299
- [x] Load local HDF5 and NetCDF-4 files directly from disk, extending the NetCDF/HDF workflow beyond Cloud-Optimized references to files already on your machine
300300
- [x] GeoEditor plugin can pull the vector features currently visible in the map view into the editor, so you can start editing what you are looking at without re-importing the source data
301301

302-
## v2.0: A 3D globe, planetary mapping, symbology interchange, and editable source layers (current)
302+
## v2.0: A 3D globe, planetary mapping, symbology interchange, and editable source layers
303303

304304
- [x] Switch any map pane to a **CesiumJS 3D globe** view that stays camera-synced with the 2D maps and mirrors the layer stack, adding a true photorealistic globe alongside the flat workspace (requires a Cesium Ion token)
305305
- [x] Planetary mapping with the OpenPlanetaryMap basemap set (Mars and the Moon) plus USGS Astrogeology basemaps for Mercury, Venus, the Galilean moons, Titan, Pluto, and Charon reprojected to Web Mercator, a per-project ellipsoid whose radius drives distance/area/scale, and a planet switcher in the Layers panel, plus an expanded EOX Maps catalog and dark-mode-aware basemap theming
@@ -316,6 +316,21 @@
316316
- [x] All 13 locale catalogs completed, with the remaining hardcoded panel and dialog strings migrated to the translation system
317317
- [x] The AI assistant can read provider API keys from OS environment variables, and the desktop diagnostics network log now captures native Tauri HTTP requests and classifies failed `fetch()` errors
318318

319+
## v2.1: A data-source Browser panel, route animation, in-browser object detection, and map recording (current)
320+
321+
- [x] A QGIS-style **Browser panel** (Data Source Manager) for exploring and adding data from one place: browse map Services and Recent items, connect to PostGIS databases and browse their schemas and tables, drill into local files, save and reopen Favorites, add a New connection per service kind, and navigate the whole tree from the keyboard
322+
- [x] **Route animation**: animate a marker along any line layer, follow the track in 3D with camera controls, and export the whole animation as an MP4 video
323+
- [x] **In-browser object detection** that runs ONNX/YOLO models directly in the webview, no server or Python required
324+
- [x] Record the map canvas (or a drawn bounding box) to a video file straight from the browser
325+
- [x] A true native-resolution viewer for geotagged photos, so full-detail imagery stays crisp on the map
326+
- [x] Wikipedia knowledge cards: click a place on the map to pull up its Wikipedia summary and info card
327+
- [x] USGS planetary basemaps for nine more celestial bodies, extending the planetary mapping catalog
328+
- [x] New OpenAerialMap plugin for searching open aerial imagery, plus a GEBCO ocean-bathymetry WMS sample with proper attribution
329+
- [x] The Whitebox toolbox is now a floating panel, and Processing subset tools can populate their bounding box from the current map view
330+
- [x] Scale bar switches between metric, imperial, and nautical units
331+
- [x] Bundled plugin drop-ins can set `activeByDefault` in their manifest, deployments can opt out of the welcome dialog, and the app now defaults to the Advanced interface and skips the welcome dialog on first run
332+
- [x] Optional HTTP Basic Auth for the web (Docker) container
333+
319334
## Plugin marketplace and registry (design)
320335

321336
This captures the design for the `v1.0` "Plugin marketplace / registry" item. It

package-lock.json

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "geolibre",
33
"private": true,
4-
"version": "2.0.0",
4+
"version": "2.1.0",
55
"description": "GeoLibre: a free and open-source, lightweight, cloud-native GIS platform for visualizing, exploring, and analyzing geospatial data. It runs in the web browser, on the desktop, on mobile, and inside Jupyter notebooks, all while keeping your data local and private",
66
"workspaces": [
77
"apps/*",

0 commit comments

Comments
 (0)