# GeoLibre | Open Geospatial Solutions | Knowledge Base | Instagit

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

GitHub Stars: 3.7k

Repository: https://github.com/opengeos/GeoLibre

---

## Articles

### [How GeoLibre's Time Slider Temporal Adapter API Drives Custom Frame-Based Layers](/opengeos/GeoLibre/time-slider-temporal-adapter-frame-based-layers)

Discover how GeoLibre's Time Slider uses its Temporal Adapter API to drive custom frame-based layers. Learn to sync any time-dimension layer with the shared timeline.

- Tags: deep-dive
- Published: 2026-08-22

### [How to Render Cloud Optimized GeoTIFFs (COGs) Client-Side Without a Tile Server](/opengeos/GeoLibre/render-cogs-client-side-no-tile-server)

Learn how to render Cloud Optimized GeoTIFFs client-side without a tile server using GeoLibre's maplibre-gl-raster. Fetch only needed byte ranges and decode rasters on the GPU.

- Tags: how-to-guide
- Published: 2026-08-22

### [How GeoLibre Handles Credential Redaction on Project Export: A Step-by-Step Guide](/opengeos/GeoLibre/geolibre-credential-redaction-project-export)

Learn how GeoLibre automatically redacts credentials during project export. Discover the step-by-step process and ensure your exported projects are always credential-free.

- Tags: how-to-guide
- Published: 2026-08-22

### [.geolibre.json Project File Structure: A Complete Guide to GeoLibre's Core Format](/opengeos/GeoLibre/structure-geolibre-json-project-file)

Explore the .geolibre.json project file structure, a comprehensive guide to GeoLibre's core format. Understand map layers, plugin states, view settings, and global preferences in this MapLibre compatible descriptor.

- Tags: api-reference
- Published: 2026-08-22

### [How to Author .geolibre.json Projects Headlessly with AI Clients](/opengeos/GeoLibre/author-geolibre-json-projects-headless-ai-clients)

Learn to author .geolibre.json projects headlessly with AI clients. Use Python MCP server or FastAPI API for programmatic creation and modification, ensuring data integrity with atomic writes and schema validation.

- Tags: how-to-guide
- Published: 2026-08-22

### [How to Perform Zonal Statistics on Zarr Data Cubes with GeoLibre](/opengeos/GeoLibre/zonal-statistics-zarr-data-cubes-geolibre)

Easily compute zonal statistics count min max mean sum std and median on Zarr data cubes using GeoLibre. Load Zarr as raster and polygons as zones with the Zonal Statistics tool.

- Tags: how-to-guide
- Published: 2026-08-22

### [How to Perform CRS-Aware Reprojection with DuckDB-WASM in GeoLibre](/opengeos/GeoLibre/crs-aware-reprojection-duckdb-wasm-geolibre)

Learn CRS-aware reprojection with DuckDB-WASM in GeoLibre. Effortlessly transform GeoJSON using ST_Transform and PROJ for accurate spatial data in your browser.

- Tags: how-to-guide
- Published: 2026-08-22

### [How GeoLibre Queries Apache Iceberg Tables Using DuckDB-WASM](/opengeos/GeoLibre/query-apache-iceberg-duckdb-wasm-geolibre)

Discover how GeoLibre queries Apache Iceberg tables client-side with DuckDB-WASM. Learn to initialize the engine, load extensions, and register manifest files for seamless data access.

- Tags: how-to-guide
- Published: 2026-08-22

### [How to Run GeoPandas and Shapely Tools in the Browser with Pyodide](/opengeos/GeoLibre/run-geopandas-shapely-browser-pyodide)

Run GeoPandas and Shapely in your browser using Pyodide. Explore the opengeos/GeoLibre project for a seamless way to process vector data client-side.

- Tags: how-to-guide
- Published: 2026-08-22

### [How GeoLibre's Python FastAPI Backend Supports Conversion and Raster Tools](/opengeos/GeoLibre/python-fastapi-backend-conversion-raster-tools)

Discover how GeoLibre's Python FastAPI backend asynchronously handles conversion and raster tools. Learn about its efficient geospatial processing using in-memory job queues and embedded scripts.

- Tags: how-to-guide
- Published: 2026-08-22

### [How to Configure mTLS Client Certificates in the GeoLibre Tauri Desktop Build](/opengeos/GeoLibre/configure-mtls-client-certificates-tauri-desktop)

Learn how GeoLibre configures mTLS client certificates in its Tauri desktop build using environment variables. Discover certificate loading and TLS backend selection.

- Tags: how-to-guide
- Published: 2026-08-22

### [How to Configure Tauri Desktop Build CSP Allowlist for Tile Hosts in GeoLibre](/opengeos/GeoLibre/configure-tauri-csp-allowlist-tile-hosts)

Learn how to configure Tauri desktop build CSP allowlist for tile hosts in GeoLibre. Easily add custom tile URLs to img-src and connect-src directives in tauri.conf.json for seamless map integration.

- Tags: how-to-guide
- Published: 2026-08-22

### [Service Worker Cache Strategy for Offline CDN Engines in GeoLibre](/opengeos/GeoLibre/service-worker-cache-strategy-offline-cdn-geolibre)

Discover GeoLibre's service worker cache strategy. Learn how CacheFirst ensures offline CDN engine functionality for seamless GeoLibre access after initial download.

- Tags: internals
- Published: 2026-08-22

### [GeoLibre Zustand Store Architecture for State Management: A Deep Dive into the Monolithic Store Pattern](/opengeos/GeoLibre/geolibre-zustand-store-architecture-state-management)

Explore GeoLibre's monolithic Zustand store architecture for state management. Learn how this pattern, using temporal middleware, enables immutable state with undo redo. Optimize your app's state.

- Tags: architecture
- Published: 2026-08-22

### [How 1000+ Whitebox Geoprocessing Tools Run in the Browser Using WebAssembly](/opengeos/GeoLibre/whitebox-geoprocessing-tools-webassembly-browser)

Discover how 1000+ Whitebox geoprocessing tools run client-side in the browser with WebAssembly. Explore lazy loading, WASI runtime, and efficient data processing for GeoJSON, COGs, and Shapefiles.

- Tags: how-to-guide
- Published: 2026-08-22

### [How to Import KML Files into GeoLibre for Client-Side Processing](/opengeos/GeoLibre/import-kml-geolibre-client-side)

Learn how to import KML files into GeoLibre for client-side processing. GeoLibre converts KML to GeoJSON in the browser, preserving style without server dependencies. Explore the parseKmlText function.

- Tags: how-to-guide
- Published: 2026-08-22

### [How to Integrate GeoLibre File Listing into Custom Scripts: A Developer's Guide](/opengeos/GeoLibre/integrating-geolibre-file-listing-into-custom-scripts)

Integrate GeoLibre file listing into your custom scripts using listProductFiles or listObjects. Access Source Cooperative datasets programmatically with this developer guide.

- Tags: how-to-guide
- Published: 2026-08-18

### [How to Recursively List Files in GeoLibre: 3 Methods for the Monorepo](/opengeos/GeoLibre/how-to-recursively-list-files-in-geolibre)

Recursively list files in GeoLibre using git ls-files, find, or a custom Node.js walker. Optimize your monorepo file management with these three effective methods.

- Tags: how-to-guide
- Published: 2026-08-18

### [GeoLibre File Listing Tools: Native Dialogs, Web Inputs, and Remote Browsers](/opengeos/GeoLibre/what-tools-are-available-for-geolibre-file-listing)

Explore GeoLibre file listing tools: native dialogs, web inputs, drag-and-drop, and secure remote browsers. Easily manage your geospatial data across platforms.

- Tags: how-to-guide
- Published: 2026-08-18

### [How GeoLibre Implements Server-Side File Search and Remote Data Lookup](/opengeos/GeoLibre/geolibre-repository-file-search-functionality)

Discover how GeoLibre implements secure server-side file search and remote data lookup using an edge worker to validate URLs, prevent proxy abuse, and ensure permissive CORS.

- Tags: how-to-guide
- Published: 2026-08-18

### [How to List Specific File Types in GeoLibre: A Complete Developer Guide](/opengeos/GeoLibre/how-to-list-specific-file-types-in-geolibre)

Learn how to list specific file types in GeoLibre with filterSupportedFiles. This guide provides granular control for vector, raster, or project files.

- Tags: how-to-guide
- Published: 2026-08-18

### [GeoLibre Repository File Management Tools: A Complete Technical Guide](/opengeos/GeoLibre/geolibre-repository-file-management-tools)

Explore the GeoLibre repository file management tools. Learn how to centralize geospatial files with a unified API for efficient data handling and integration.

- Tags: how-to-guide
- Published: 2026-08-18

### [How to Query Files Within the GeoLibre Project: Zarr Raster API Guide](/opengeos/GeoLibre/querying-files-within-the-geolibre-project)

Query Zarr raster layers in GeoLibre using the queryZarrLayer API. Access raster data with layer IDs and GeoJSON geometries for points or polygons.

- Tags: how-to-guide
- Published: 2026-08-18

### [GeoLibre Repository File System Exploration: Complete Architecture and Code Guide](/opengeos/GeoLibre/geolibre-repository-file-system-exploration)

Explore the GeoLibre repository file system architecture and code. Discover how this monorepo integrates React, Tauri, FastAPI, and Jupyter for a unified geospatial platform.

- Tags: architecture
- Published: 2026-08-18

### [How to Get a List of All Files in GeoLibre: 3 Methods Explained](/opengeos/GeoLibre/how-to-get-a-list-of-all-files-in-geolibre)

Easily list all files in GeoLibre. Discover three powerful methods, including the straightforward git ls-files command, to manage your repository inventory effectively.

- Tags: how-to-guide
- Published: 2026-08-18

### [GeoLibre Repository File System Commands: A Complete Guide to Project Structure and CLI Operations](/opengeos/GeoLibre/geolibre-repository-file-system-commands)

Master GeoLibre repository file system commands. Learn npm workspace, Tauri CLI operations, and project structure for efficient development. Explore our comprehensive guide now.

- Tags: how-to-guide
- Published: 2026-08-18

### [Troubleshooting File Listing in GeoLibre: A Complete Guide to Remote Data Sources](/opengeos/GeoLibre/troubleshooting-file-listing-in-geolibre)

Troubleshoot file listing issues in GeoLibre. Understand remote data sources, pagination limits, and plugin architecture for seamless remote file access. Learn to resolve common problems.

- Tags: how-to-guide
- Published: 2026-08-18

### [Best Practices for Listing Files in GeoLibre: 5 Proven Methods for Desktop and Web](/opengeos/GeoLibre/best-practices-for-listing-files-in-geolibre)

Master GeoLibre file listing with 5 proven desktop and web methods. Optimize your data management with Tauri dialogs, drag-and-drop, and more.

- Tags: best-practices
- Published: 2026-08-18

### [GeoLibre Repository File Listing API: A Complete Developer's Guide](/opengeos/GeoLibre/geolibre-repository-file-listing-api)

Explore the GeoLibre repository file listing API for DOM-free, S3-compatible access to paginated geospatial data. Integrate with Source Coop, Hugging Face, and OpenAerialMap.

- Tags: api-reference
- Published: 2026-08-18

### [How to Interact with GeoLibre Files Programmatically: 3 Methods Explained](/opengeos/GeoLibre/how-to-interact-with-geolibre-files-programmatically)

Learn to interact with GeoLibre files programmatically using 3 methods: Zustand store API, embed API, or FastAPI side-car. Integrate and manipulate geospatial data efficiently.

- Tags: how-to-guide
- Published: 2026-08-18

### [GeoLibre Repository File Browsing Techniques: A Complete Technical Guide](/opengeos/GeoLibre/geolibre-repository-file-browsing-techniques)

Master GeoLibre repository file browsing techniques with this comprehensive guide. Learn about its monorepo architecture, Tauri dialogs, and efficient state management for seamless data integration.

- Tags: how-to-guide
- Published: 2026-08-18

### [Understanding GeoLibre's File Organization: A Complete Monorepo Guide](/opengeos/GeoLibre/understanding-geolibre-file-organization)

Explore GeoLibre's monorepo structure unifying TypeScript, Python, and Rust for web, desktop, and mobile. Master efficient code sharing across platforms.

- Tags: deep-dive
- Published: 2026-08-18

### [Developing with the GeoLibre File System: A Complete Guide to `.geolibre.json`](/opengeos/GeoLibre/developing-with-geolibre-file-system)

Learn to develop with the GeoLibre file system. This guide details how .geolibre.json files manage maps, layers, styles, and widgets for portable workspace representation.

- Tags: how-to-guide
- Published: 2026-08-18

### [GeoLibre Repository File Navigation: A Complete Guide to the Open Source GIS Monorepo](/opengeos/GeoLibre/geolibre-repository-file-navigation)

Master GeoLibre repository file navigation. Explore this open source GIS monorepo's structure, from UI shell to core libraries, and understand key entry points for seamless development.

- Tags: how-to-guide
- Published: 2026-08-18

### [How to Access the GeoLibre Repository Structure: A Complete Monorepo Guide](/opengeos/GeoLibre/how-to-access-geolibre-repository-structure)

Explore the GeoLibre repository structure, an npm workspaces monorepo. Learn how to navigate its top-level directories for React, TypeScript, Python, and FastAPI.

- Tags: how-to-guide
- Published: 2026-08-18

### [Alternative Ways to View GeoLibre Repository Contents: Browsing, Building, and Running the Code](/opengeos/GeoLibre/alternative-ways-to-view-geolibre-repository-contents)

Explore the GeoLibre repository beyond GitHub. Learn how to browse, build, and run the code locally via git clone, web apps, Jupyter, RStudio, or Docker.

- Tags: how-to-guide
- Published: 2026-08-18

### [GeoLibre File Listing Methods: A Complete Guide to Local and Remote Data Discovery](/opengeos/GeoLibre/geolibre-file-listing-methods)

Master GeoLibre file listing methods for local and remote data discovery. Explore secure, layered approaches including browser pickers, allow-listed fetching, plugins, and DuckDB-WASM.

- Tags: how-to-guide
- Published: 2026-08-18

### [How to List Files in GeoLibre: 5 Approaches Explained with Source Code](/opengeos/GeoLibre/different-approaches-to-listing-files-in-geolibre)

Explore 5 ways to list files in GeoLibre, including native dialogs, drag-and-drop, and remote panels. Get source code examples for seamless file integration.

- Tags: how-to-guide
- Published: 2026-08-18

### [How to List Files in the GeoLibre Repository: A Complete Guide](/opengeos/GeoLibre/how-to-list-files-in-geolibre-repository)

Learn how to list files in the GeoLibre repository using git ls-files, git ls-tree, or the GitHub web interface. Our guide shows you the fastest methods.

- Tags: how-to-guide
- Published: 2026-08-18

### [How to Contribute Documentation to GeoLibre: A Complete Guide for Contributors](/opengeos/GeoLibre/how-to-contribute-documentation-to-geolibre)

Learn how to contribute documentation to GeoLibre with our complete guide. Set up your environment and submit changes via pull request to the opengeos/GeoLibre repository.

- Tags: how-to-guide
- Published: 2026-08-16

### [GeoLibre Roadmap: Complete Development Plan from v0.1 to v1.3](/opengeos/GeoLibre/what-is-roadmap-for-geolibre-development)

Explore the GeoLibre development roadmap from v0.1 to v1.3. Discover concrete features and milestones for this open-source geospatial library. See the complete plan.

- Tags: roadmap
- Published: 2026-08-16

### [How to Package GeoLibre for Deployment: A Complete Guide to 4 Distribution Formats](/opengeos/GeoLibre/how-to-package-geolibre-for-deployment)

Learn how to package GeoLibre for deployment in four formats: static web app, Docker, Tauri desktop app, and JS package. Streamline your geospatial application distribution.

- Tags: how-to-guide
- Published: 2026-08-16

### [GeoLibre API Best Practices: A Complete Guide to Modular, Store‑Driven GIS Development](/opengeos/GeoLibre/what-are-best-practices-for-using-geolibre-api)

Master GeoLibre API best practices for modular, store-driven GIS development. Use Zustand store, optional Python calls, and plugin registration for robust applications.

- Tags: best-practices
- Published: 2026-08-16

### [How to Build GeoLibre with Specific Features Enabled or Disabled](/opengeos/GeoLibre/how-to-build-geolibre-with-specific-features-enabled-or-disabled)

Build GeoLibre controlling features with GEOLIBRE environment variables. Optimize for WASM engines, CDNs, store compliance, or size restrictions in your build.

- Tags: how-to-guide
- Published: 2026-08-16

### [Does GeoLibre Have CI/CD Pipelines? A Complete Guide to GitHub Actions Workflows](/opengeos/GeoLibre/are-there-any-ci-cd-pipelines-set-up-for-geolibre)

Discover GeoLibre's CI/CD with GitHub Actions. Explore 10+ workflows for security, testing, Docker builds, and multi-platform releases. Learn how we automate development.

- Tags: how-to-guide
- Published: 2026-08-16

### [GeoLibre Build System Tools: A Complete Guide to npm Workspaces, Vite, and Tauri](/opengeos/GeoLibre/what-are-build-system-tools-used-by-geolibre)

Explore GeoLibre's build system: npm workspaces, Vite, and Tauri. Learn how this polyglot GIS platform generates web, desktop, and Python outputs from a single monorepo.

- Tags: how-to-guide
- Published: 2026-08-16

### [How to Debug Issues in GeoLibre: A Step-by-Step Guide for the Open Source Geospatial Library](/opengeos/GeoLibre/how-to-debug-issues-within-geolibre-library)

Debug GeoLibre issues effectively with our step-by-step guide. Inspect Zustand store and MapLibre-GL instance to swiftly resolve state and rendering bugs in this open source geospatial library.

- Tags: how-to-guide
- Published: 2026-08-16

### [GeoLibre Performance Considerations: Browser & Desktop Optimization Guide](/opengeos/GeoLibre/what-are-performance-considerations-when-using-geolibre)

Optimize GeoLibre performance by managing WebAssembly memory, avoiding main-thread blocking, and leveraging the Python side-car for demanding spatial tasks.

- Tags: performance
- Published: 2026-08-16

### [How to Integrate GeoLibre with Other Geospatial Tools: A Complete Developer Guide](/opengeos/GeoLibre/how-to-integrate-geolibre-with-other-geospatial-tools)

Integrate GeoLibre with other geospatial tools using its plugin architecture for seamless data consumption, processing, and embeddable components. Unlock powerful interoperability.

- Tags: how-to-guide
- Published: 2026-08-16

### [GeoLibre Coding Standards: A Complete Guide for Contributors](/opengeos/GeoLibre/what-are-coding-standards-for-geolibre)

Contribute to opengeos/GeoLibre with ease. Discover GeoLibre coding standards: strict linting, Conventional Commits, and pre-commit hooks ensure code quality for JavaScript, TypeScript, and Python.

- Tags: best-practices
- Published: 2026-08-16

### [Where to Find GeoLibre Developer Documentation: A Complete Guide for Contributors and Extenders](/opengeos/GeoLibre/where-can-i-find-documentation-for-geolibre-developers)

Find GeoLibre developer documentation in the opengeos/GeoLibre repository's docs folder. The README is your entry point to guides for contributors and extenders.

- Tags: developer-documentation
- Published: 2026-08-16

### [How to Report a Bug in GeoLibre: A Complete Guide for Contributors](/opengeos/GeoLibre/how-to-report-bug-in-geolibre)

Learn how to report a bug in GeoLibre by opening a GitHub issue with clear steps, environment details, and test data. Contribute to improving the opengeos/GeoLibre repository.

- Tags: how-to-guide
- Published: 2026-08-16

### [GeoLibre License: Which Open-Source License Does the GeoLibre Project Use?](/opengeos/GeoLibre/what-is-license-of-geolibre-project)

Discover the GeoLibre project license. GeoLibre uses the MIT License, a flexible open-source license for commercial and private use. Learn more.

- Tags: licensing
- Published: 2026-08-16

### [What Programming Languages Are Used in GeoLibre? Full Stack Breakdown](/opengeos/GeoLibre/what-programming-languages-are-used-in-geolibre)

Discover the programming languages powering GeoLibre: TypeScript, Python, and Rust. Explore how this polyglot monorepo enables cross-platform geospatial analytics.

- Tags: full-stack-breakdown
- Published: 2026-08-16

### [How to Run the Unit Tests for GeoLibre: A Complete Guide for All Test Layers](/opengeos/GeoLibre/how-to-run-unit-tests-for-geolibre)

Easily run GeoLibre unit tests for frontend, backend, workers, and e2e suites with simple npm commands. Follow our complete guide for all test layers.

- Tags: how-to-guide
- Published: 2026-08-16

### [GeoLibre Testing Strategy: A Complete Guide to Cross-Technology Quality Assurance](/opengeos/GeoLibre/what-is-testing-strategy-for-geolibre)

Discover GeoLibre's comprehensive cross-technology testing strategy. Learn about our layered approach covering front-end unit tests, Python back-end validation, Playwright E2E automation, and strict coverage.

- Tags: best-practices
- Published: 2026-08-16

### [What Are the Main Modules and Components of GeoLibre? A Complete Architecture Guide](/opengeos/GeoLibre/what-are-main-modules-components-of-geolibre)

Explore the main modules and components of GeoLibre. Understand the architecture of this open-source geospatial library, including core modules, desktop app, Cloudflare workers, and more.

- Tags: architecture
- Published: 2026-08-16

### [How GeoLibre Handles Planetary Basemaps with Per-Project Ellipsoid Settings for Non-Earth Mapping](/opengeos/GeoLibre/geo-libre-planetary-basemaps-per-project-ellipsoid-settings-non-earth-mapping)

Discover how GeoLibre manages planetary basemaps with per-project ellipsoid settings for non-Earth mapping. Learn about its ellipsoid registry and synchronized store for accurate celestial body measurements.

- Tags: deep-dive
- Published: 2026-08-15

### [GeoLibre Components Plugin Architecture: How It Wraps maplibre-gl-components Controls](/opengeos/GeoLibre/components-plugin-architecture-wrapping-maplibre-gl-components-controls)

Discover the GeoLibre Components plugin architecture. Learn how it efficiently wraps maplibre-gl-components controls using a three-layer system for dynamic loading, caching, and lifecycle management.

- Tags: architecture
- Published: 2026-08-15

### [How GeoLibre's Native HTTP Client Trusts the OS Certificate Store vs. WebView](/opengeos/GeoLibre/desktop-app-http-client-trust-os-certificate-store-vs-webview)

Discover how GeoLibre's native HTTP client securely trusts the OS certificate store, differing from WebView's approach for robust desktop app security.

- Tags: internals
- Published: 2026-08-15

### [How Projects Reference External Plugin State for URL Parameter Handling in GeoLibre](/opengeos/GeoLibre/projects-reference-external-plugin-state-url-parameter-handling)

Discover how GeoLibre projects reference external plugin state for URL parameter handling using urlParameterNames PluginManager and ProjectPluginState.

- Tags: deep-dive
- Published: 2026-08-15

### [How External Plugins Access Runtime Environment Variables in GeoLibre: A Complete Guide to AI Assistant API Keys](/opengeos/GeoLibre/external-plugins-access-runtime-environment-variables-ai-api-keys)

Learn how GeoLibre external plugins access runtime environment variables for AI assistant API keys using a secure snapshot mechanism and the @geolibre/plugins runtime API.

- Tags: how-to-guide
- Published: 2026-08-15

### [Positional Right‑Sidebar Docks vs Shared‑Rail Modes for Plugin Panels in GeoLibre](/opengeos/GeoLibre/positional-right-sidebar-docks-vs-shared-rail-modes-plugin-panels)

Discover the key differences between positional right-sidebar docks and shared-rail modes for GeoLibre plugin panels. Understand how each mode manages panel mounting and state preservation to optimize your workflow.

- Tags: internals
- Published: 2026-08-15

### [How Raster and COG Layers Added via Plugins Integrate with the Style Panel's Paint Controls](/opengeos/GeoLibre/raster-cog-layers-plugins-style-panel-paint-controls)

Discover how raster and COG layers from plugins seamlessly integrate with GeoLibre's Style panel. Learn how metadata flags control paint editors and opacity for enhanced styling.

- Tags: how-to-guide
- Published: 2026-08-15

### [Self-Hosting GeoLibre with CDN-Free Builds: A Complete Guide to Offline Deployment](/opengeos/GeoLibre/self-hosting-geo-libre-cdn-free-builds)

Learn how to self-host GeoLibre with CDN-free builds. This guide explains setting environment flags to bundle WASM engines locally for offline deployment. Get started today.

- Tags: how-to-guide
- Published: 2026-08-15

### [How GeoLibre's Python Pyodide Engine Shares Code with the FastAPI Sidecar for Consistent Vector Operations](/opengeos/GeoLibre/python-pyodide-engine-code-sharing-fastapi-sidecar-vector-operations)

Discover how GeoLibre's Python Pyodide engine and FastAPI sidecar share code from a single source for consistent vector operations in browser and server environments. Learn more.

- Tags: internals
- Published: 2026-08-15

### [Map Rendering Performance on Linux WebKitGTK in GeoLibre: Bottlenecks and Mitigations](/opengeos/GeoLibre/map-rendering-performance-linux-webkitgtk-bottlenecks)

Discover WebKitGTK map rendering performance bottlenecks in GeoLibre on Linux. Learn how slow WebGL tile uploads cause frame rate drops and explore potential mitigations.

- Tags: performance
- Published: 2026-08-15

### [How Built‑In Plugins Register with the GeoLibre PluginManager and What Lifecycle Hooks Are Available](/opengeos/GeoLibre/built-in-plugins-register-pluginmanager-lifecycle-hooks)

Discover how built-in plugins register with the GeoLibre PluginManager and explore available lifecycle hooks like onRegister, onActivate, and onDeactivate. Optimize your plugin development.

- Tags: internals
- Published: 2026-08-15

### [CSP Allowlists for External Tile Hosts in Tauri vs Web Builds: A Complete Guide](/opengeos/GeoLibre/csp-allowlists-external-tile-hosts-tauri-vs-web-builds)

Learn the exact CSP allowlists needed for external tile hosts in Tauri desktop and web builds. Discover how GeoLibre manages these essential security configurations for seamless integration.

- Tags: how-to-guide
- Published: 2026-08-15

### [Maximum Zoom Level for PMTiles Conversion in GeoLibre: How It Syncs with the WASM Binary](/opengeos/GeoLibre/max-zoom-level-pmtiles-conversion-synchronized-wasm-binary)

Discover the maximum zoom level for PMTiles conversion in GeoLibre, zoom level 18, and how it syncs with the WASM binary for consistent UI, validation, and testing.

- Tags: deep-dive
- Published: 2026-08-15

### [How the Time Slider Integrates with Zarr Layers Containing Internal Time Dimensions](/opengeos/GeoLibre/time-slider-integration-zarr-layers-internal-time-dimensions)

Learn how GeoLibre's Time Slider automatically animates temporal dimensions from Zarr data cubes by parsing CF time conventions and mapping slider positions to array slices.

- Tags: internals
- Published: 2026-08-15

### [How Plugins Register Custom WebGL Layers and Ensure Persistence in GeoLibre Projects](/opengeos/GeoLibre/plugins-register-custom-webgl-layers-persist-projects)

Learn how GeoLibre plugins register custom WebGL layers and ensure they persist across sessions using registerExternalNativeLayer and re-establishing the paintBridge.

- Tags: how-to-guide
- Published: 2026-08-15

### [GeoLibre SQL Workspace Architecture: How It Supports DuckDB, PostGIS, and Apache Sedona Backends](/opengeos/GeoLibre/sql-workspace-architecture-database-backend-support)

Explore the GeoLibre SQL Workspace architecture. Learn how its unified spatial SQL interface supports DuckDB, PostGIS, and Apache Sedona backends with WebAssembly for in-browser execution.

- Tags: architecture
- Published: 2026-08-15

### [How GeoLibre Handles Vector File Imports via DuckDB-WASM Spatial: Formats, Pipeline, and Code Examples](/opengeos/GeoLibre/geo-libre-vector-file-imports-duckdb-wasm-spatial-supported-formats)

Learn how GeoLibre imports vector files client-side using DuckDB-WASM Spatial. Discover supported formats like GeoJSON, Shapefile, GeoParquet, and CAD, and explore its efficient pipeline with code examples.

- Tags: deep-dive
- Published: 2026-08-15

### [How GeoLibre Implements PWA Runtime Caching for CDN-Delivered Engines for Offline Support](/opengeos/GeoLibre/pwa-service-worker-runtime-caching-offline-support-cdn-engines)

Discover how GeoLibre uses Vite and Workbox for PWA runtime caching to enable offline support for CDN-delivered WebAssembly engines after your first online visit.

- Tags: how-to-guide
- Published: 2026-08-15

### [How External Plugins Load in GeoLibre Desktop vs Web Build: Security Model Explained](/opengeos/GeoLibre/external-plugins-load-geo-libre-desktop-vs-web-build-security-model)

Discover how GeoLibre loads external plugins across desktop and web builds. Understand the security model and plugin trust for GeoLibre.

- Tags: security-model
- Published: 2026-08-15

### [How CesiumJS 3D Globe Integration Synchronizes with MapLibre's 2D View and Store State](/opengeos/GeoLibre/cesiumjs-3d-globe-sync-with-maplibre-2d-view-store-state)

Learn how GeoLibre synchronizes CesiumJS 3D globe and MapLibre 2D views using a single Zustand store. Achieve seamless integration without direct coupling between rendering engines.

- Tags: deep-dive
- Published: 2026-08-15

### [Whitebox WASM Engine vs Python Sidecar for Geoprocessing: What's the Difference?](/opengeos/GeoLibre/difference-between-whitebox-wasm-engine-and-python-sidecar-geoprocessing)

Compare the Whitebox WASM engine for in-browser geoprocessing with the Python sidecar for heavy workloads. Discover the best approach for your GIS data.

- Tags: comparison
- Published: 2026-08-15

### [How GeoLibre's Store-Driven Architecture Manages State Between the UI and MapLibre](/opengeos/GeoLibre/how-does-geo-libre-store-driven-architecture-manage-state-between-ui-and-maplibre)

Discover how GeoLibre's store-driven architecture seamlessly manages UI and MapLibre state using a single Zustand store for deterministic two-way synchronization.

- Tags: architecture
- Published: 2026-08-15

### [How GeoLibre Pre-Commit Hooks Manage the npm-build Hook and Enforce Contribution Conventions](/opengeos/GeoLibre/how-pre-commit-hooks-handle-npm-build-hook-contribution-conventions)

Discover how GeoLibre pre-commit hooks manage the npm-build hook for type safety and production build integrity, enforcing strict contribution conventions for a robust JavaScript workspace.

- Tags: how-to-guide
- Published: 2026-08-05

### [How the GeoLibre Build Pipeline Produces Web, Desktop, and Jupyter Embed Outputs](/opengeos/GeoLibre/how-geolibre-build-pipeline-produce-web-desktop-jupyter-embed-outputs)

Discover how the GeoLibre build pipeline creates web, desktop, and Jupyter outputs using Vite and npm scripts. Learn to control asset bundling and more with environment variables.

- Tags: how-to-guide
- Published: 2026-08-05

### [How addGeoJsonLayer and GeoLibreLayer Records Flow Through the GeoLibre Application](/opengeos/GeoLibre/how-addgeojsonlayer-geolibrelayer-records-flow-through-application)

Understand how addGeoJsonLayer and GeoLibreLayer records flow in the GeoLibre app. See how Zustand store, MapController, and MapLibre sync to render GeoJSON with undo/redo support.

- Tags: internals
- Published: 2026-08-05

### [How the GeoLibre Desktop App Launches the Python Sidecar Using uv and Handles Permissions](/opengeos/GeoLibre/how-geolibre-desktop-app-launch-python-sidecar-uv-permissions)

Discover how the GeoLibre desktop app uses Rust Tauri and uv to launch its Python FastAPI sidecar and manage crucial filesystem permissions and port conflicts.

- Tags: internals
- Published: 2026-08-05

### [How the MAX_VECTOR_PMTILES_ZOOM Constant Stays Synchronized with the WASM Binary in GeoLibre](/opengeos/GeoLibre/how-max-vector-pmtiles-zoom-constant-synchronized-wasm-binary)

Discover how GeoLibre ensures MAX_VECTOR_PMTILES_ZOOM stays in sync with its WASM binary. A runtime test validates the limit, preventing version mismatches and ensuring seamless operation.

- Tags: internals
- Published: 2026-08-05

### [How MapLibre Control Class Names Get Mirrored for the Record Video Feature in GeoLibre](/opengeos/GeoLibre/how-maplibre-control-class-names-mirrored-record-video-feature)

Discover how GeoLibre mirrors MapLibre control class names for video recording using MAP_PANEL_SELECTOR to capture on-map UI panels during export.

- Tags: internals
- Published: 2026-08-05

### [How GeoLibre Builds Proxy Requests to the Python Sidecar at /sidecar](/opengeos/GeoLibre/how-geolibre-browser-build-proxy-requests-python-sidecar)

Learn how GeoLibre builds proxy requests to the Python sidecar. Discover runtime URL resolution for local development or same-origin proxy paths.

- Tags: how-to-guide
- Published: 2026-08-05

### [GeoLibre Testing Strategy and Coverage Floors in CI: A Complete Guide](/opengeos/GeoLibre/what-geolibre-testing-strategy-coverage-floors-ci)

Explore the GeoLibre testing strategy and coverage floors in CI. Learn how layered gates ensure high quality across TypeScript, Python, and Rust components.

- Tags: best-practices
- Published: 2026-08-05

### [How GeoLibre's Custom MapLibre Protocol Handles Local MBTiles Files](/opengeos/GeoLibre/how-custom-maplibre-protocol-handle-local-mbtiles-files)

Discover how GeoLibre's custom MapLibre protocol efficiently handles local MBTiles files. Render SQLite databases directly with a Tauri Rust backend, no web server needed.

- Tags: how-to-guide
- Published: 2026-08-05

### [How to Use the GeoLibre PMTiles, GeoParquet, and COG Conversion Pipeline](/opengeos/GeoLibre/how-conversion-pipeline-work-pmtiles-geoparquet-cog-formats)

Explore GeoLibre's conversion pipeline to transform data into PMTiles, GeoParquet, and COG formats using WebAssembly and Python FastAPI. Optimize your geospatial data for cloud.

- Tags: how-to-guide
- Published: 2026-08-05

### [Client-Side vs Server-Side Vector Processing in GeoLibre: Turf.js vs GeoPandas/Shapely Comparison](/opengeos/GeoLibre/difference-client-side-vector-processing-server-side-processing-geolibre)

Explore client-side vector processing with Turf.js versus server-side with GeoPandas Shapely in GeoLibre. Choose between instant browser interactivity and powerful Python GIS analysis for your geospatial workflows.

- Tags: comparison
- Published: 2026-08-05

### [How to Load External Plugins from ZIP Files and plugin.json Manifests in GeoLibre](/opengeos/GeoLibre/how-external-plugins-load-zip-files-plugin-json-manifests)

Discover how GeoLibre loads external plugins from ZIP files or plugin.json manifests using its three-phase pipeline: discovery, validation, and activation.

- Tags: how-to-guide
- Published: 2026-08-05

### [How the Tauri v2 Desktop App Integrates with the React Frontend for Filesystem Dialogs in GeoLibre](/opengeos/GeoLibre/how-tauri-v2-desktop-app-integrate-react-frontend-filesystem-dialogs)

Learn how GeoLibre's Tauri v2 desktop app connects React components to native filesystem dialogs using a TypeScript bridge and Tauri's invoke API, with browser fallbacks.

- Tags: how-to-guide
- Published: 2026-08-05

### [How GeoLibre's react-i18next i18n System Supports Translations and RTL Locales](/opengeos/GeoLibre/how-i18n-system-react-i18next-support-translations-rtl-locales)

Discover how GeoLibre's react-i18next i18n system enables seamless translations and automatic RTL mirroring for diverse locales like Arabic, enhancing global accessibility.

- Tags: internals
- Published: 2026-08-05

### [How GeoLibre Handles Layer Synchronization Between Store and MapLibre GL JS](/opengeos/GeoLibre/how-geolibre-handle-layer-synchronization-store-maplibre-gl-js)

Discover how GeoLibre synchronizes map layers between your store and MapLibre GL JS. Learn about the deterministic process managed by MapController and layer-sync for seamless updates.

- Tags: internals
- Published: 2026-08-05

### [How the GeoLibre Embed System Works: Controlling Maps via @geolibre/embed](/opengeos/GeoLibre/how-geolibre-embed-system-work-geolibre-embed-package)

Discover how the GeoLibre embed system uses postMessage and the @geolibre/embed library to control iframe maps. Learn about origin validation and typed API methods like setView.

- Tags: how-to-guide
- Published: 2026-08-05

### [How GeoLibre Executes Whitebox Tools Client-Side with WebAssembly](/opengeos/GeoLibre/how-webassembly-geoprocessing-toolbox-execute-whitebox-tools-client-side)

Discover how GeoLibre executes Whitebox Tools client-side using WebAssembly. Learn about browser-based geoprocessing, WASM compilation, and JavaScript API for efficient raster analysis without server trips.

- Tags: how-to-guide
- Published: 2026-08-05

### [Understanding the .geolibre.json Project Schema in GeoLibre](/opengeos/GeoLibre/what-is-geolibre-json-project-schema-define-project-state)

Explore the .geolibre.json project schema. Learn how this GeoLibre file defines your entire workspace state for easy restoration and sharing.

- Tags: api-reference
- Published: 2026-08-05

### [How to Create and Register a Custom Plugin in GeoLibre: A Complete Guide](/opengeos/GeoLibre/how-to-create-register-custom-plugin-geolibre)

Create and register custom GeoLibre plugins easily. Implement the GeoLibrePlugin interface and use PluginManager to add your functionality. Get started today!

- Tags: how-to-guide
- Published: 2026-08-05

### [How MapController.syncLayers Reconciles MapLibre Sources and Layers with the Zustand Store in GeoLibre](/opengeos/GeoLibre/how-mapcontroller-synclayers-reconcile-maplibre-zustand-store)

Learn how MapController.syncLayers keeps MapLibre sources and layers in sync with the Zustand store. This GeoLibre function ensures data integrity and visual consistency.

- Tags: internals
- Published: 2026-08-05

### [How DuckDB-WASM Spatial Converts Local Vector Files to GeoJSON in GeoLibre](/opengeos/GeoLibre/how-duckdb-wasm-spatial-convert-local-vector-files-geojson-rendering)

Learn how DuckDB-WASM Spatial converts local vector files to GeoJSON for GeoLibre. Explore ST_Read, ST_AsGeoJSON, and ST_Transform for efficient geospatial data processing.

- Tags: how-to-guide
- Published: 2026-08-05

### [How the Python FastAPI Sidecar Integrates with the GeoLibre Frontend](/opengeos/GeoLibre/how-python-fastapi-sidecar-integrates-geolibre-frontend)

Learn how the GeoLibre frontend integrates with its Python FastAPI sidecar using a token-aware HTTP client for secure and dynamic communication. Discover its routing capabilities.

- Tags: how-to-guide
- Published: 2026-08-05

### [Responsibilities of Each Package in the GeoLibre npm Workspaces Monorepo](/opengeos/GeoLibre/responsibilities-of-each-package-geolibre-npm-workspaces-monorepo)

Discover the responsibilities of each package within the GeoLibre npm workspaces monorepo. Understand how @geolibre/core, @geolibre/map, @geolibre/ui, and others separate concerns for efficient geospatial development.

- Tags: internals
- Published: 2026-08-05

### [How GeoLibre's Store-Driven Architecture with Zustand Manages Application State](/opengeos/GeoLibre/how-does-geolibre-store-driven-architecture-zustand-manage-application-state)

Discover how GeoLibre leverages a store-driven architecture with Zustand and zundo for unlimited undo/redo. Learn how state mutations flow through actions for efficient application state management.

- Tags: architecture
- Published: 2026-08-05

### [GeoLibre PWA vs. Tauri Desktop: How Offline Behavior Differs in OpenGeos/GeoLibre](/opengeos/GeoLibre/what-are-the-differences-in-offline-behavior-between-the-pwa-and-tauri-desktop-builds)

Discover the offline behavior differences between GeoLibre PWA and Tauri desktop builds. Learn how PWA needs initial online access while Tauri offers instant offline use.

- Tags: comparison
- Published: 2026-08-04

### [How GeoLibre's Vector Tools Fallback Mechanism Works Between Turf.js and the Sidecar GeoPandas Engine](/opengeos/GeoLibre/how-does-the-vector-tools-fallback-mechanism-work-between-turf.js-and-the-sidecar-geopandas-engine)

Discover how GeoLibre's vector tools fallback mechanism intelligently switches between Turf.js and GeoPandas for optimal geoprocessing performance and compatibility.

- Tags: internals
- Published: 2026-08-04

### [GeoLibre mTLS and Certificate Handling: Environment Variables for Native HTTP Client Configuration](/opengeos/GeoLibre/what-environment-variables-control-the-native-http-client-s-mtls-and-certificate-handling)

Configure GeoLibre's native HTTP client mTLS and certificate handling using five key environment variables. Learn how REQWEST_TLS_CA_CERT, REQWEST_TLS_CLIENT_CERT, and others manage secure connections.

- Tags: how-to-guide
- Published: 2026-08-04

### [How the GeoLibre Elevation-Profile Plugin Calculates and Exports Elevation Data from Terrain Layers](/opengeos/GeoLibre/how-does-the-elevation-profile-plugin-calculate-and-export-elevation-data-from-terrain-layers)

Learn how the GeoLibre elevation-profile plugin calculates and exports elevation data from terrain layers. It uses Open-Meteo API, renders D3 charts, and exports CSV/SVG.

- Tags: how-to-guide
- Published: 2026-08-04

### [How the Expression System Defines Style Property Specifications in GeoLibre](/opengeos/GeoLibre/how-does-the-expression-system-in-packages-core-src-expressions.ts-define-style-property-specifications)

Discover how GeoLibre's expression system defines style property specifications using the propertySpecFor helper for data-driven styling and zoom/feature parameter validation.

- Tags: internals
- Published: 2026-08-04

### [How Built-In Plugins Like maplibre‑3d‑tiles Integrate with the GeoLibre Store](/opengeos/GeoLibre/how-do-built-in-plugins-like-maplibre-3d-tiles-integrate-with-the-store)

Discover how GeoLibre plugins like maplibre-3d-tiles integrate with the store using Zustand, accessing the GeoLibreAppAPI to sync state and dispatch mutations for seamless MapLibre and Deck.gl overlay control.

- Tags: internals
- Published: 2026-08-04

### [How Attribute Table Selection Syncs with Map Highlighting and Zoom-to-Feature in GeoLibre](/opengeos/GeoLibre/how-does-attribute-table-selection-synchronize-with-map-highlighting-and-zoom-to-feature)

Learn how GeoLibre synchronizes attribute table selection with map highlighting and zoom to feature using its reactive Zustand store for seamless GIS data interaction.

- Tags: how-to-guide
- Published: 2026-08-04

### [How the geolibre-wasm Runtime Manages Raster I/O and Conversions for PMTiles and COG](/opengeos/GeoLibre/how-does-the-geolibre-wasm-runtime-manage-raster-i-o-and-conversions-for-pmtiles-and-cog)

Discover how the geolibre-wasm runtime efficiently handles raster I/O and conversions for PMTiles and COG using WebAssembly bundles for client-side processing.

- Tags: internals
- Published: 2026-08-04

### [How the Custom MapLibre Protocol for Local MBTiles Interacts with Tauri Commands in GeoLibre](/opengeos/GeoLibre/how-does-the-custom-maplibre-protocol-for-local-mbtiles-interact-with-tauri-commands)

Discover how GeoLibre uses a custom MapLibre protocol to securely access local MBTiles via Tauri commands, enabling sandboxed SQLite database interactions.

- Tags: how-to-guide
- Published: 2026-08-04

### [GeoLibre `.geolibre.json` Project Format Schema and Serialization Guide](/opengeos/GeoLibre/what-is-the-schema-for-the-.geolibre.json-project-format-and-how-is-it-serialized)

Learn the .geolibre.json project format schema and serialization for the GeoLibre workspace. Understand how to store and parse your project state efficiently.

- Tags: api-reference
- Published: 2026-08-04

### [How GeoLibre PWA Service Worker Implements Offline Caching for Pyodide and PGlite](/opengeos/GeoLibre/how-does-the-geolibre-pwa-service-worker-implement-offline-caching-for-pyodide-and-pglite)

Learn how the GeoLibre PWA service worker precaches and runtime-caches Pyodide and PGlite with a CacheFirst strategy for 30-day offline use. Enable full offline functionality after the initial load.

- Tags: how-to-guide
- Published: 2026-08-04

### [How GeoLibre Bidirectionally Syncs CesiumJS 3D Globe Camera and Layer State with MapLibre](/opengeos/GeoLibre/how-is-the-cesiumjs-3d-globe-camera-and-layer-state-bidirectionally-synced-with-maplibre)

Discover how GeoLibre bidirectionally syncs CesiumJS 3D globe camera and layer state with MapLibre using a shared Zustand store and conversion functions. Explore the repository.

- Tags: how-to-guide
- Published: 2026-08-04

### [How to Run Python GeoPandas and Shapely in the Browser with Pyodide: No Server Required](/opengeos/GeoLibre/how-can-python-geopandas-and-shapely-be-used-in-the-browser-via-pyodide-without-a-server)

Run Python GeoPandas and Shapely in your browser with Pyodide. GeoLibre offers full vector processing capabilities directly client-side, no server needed. Experience identical results to native processing.

- Tags: how-to-guide
- Published: 2026-08-04

### [How CereusDB (Apache Sedona WASM) Enables Client-Side Spatial SQL Execution in GeoLibre](/opengeos/GeoLibre/how-does-cereusdb-apache-sedona-wasm-enable-client-side-spatial-sql-execution)

Discover how GeoLibre uses CereusDB (Apache Sedona WASM) for client-side spatial SQL execution directly in your browser. Learn about dynamic WASM loading and efficient query processing.

- Tags: how-to-guide
- Published: 2026-08-04

### [What Spatial SQL Engines Are Supported in GeoLibre's SQL Workspace?](/opengeos/GeoLibre/what-spatial-sql-engines-are-supported-in-the-sql-workspace-duckdb-pglite-postgis-apache-sedona)

Explore spatial SQL engines in GeoLibre's SQL Workspace including DuckDB, PGlite/PostGIS, and Apache Sedona with automatic spatial extension loading for ST_* functions.

- Tags: api-reference
- Published: 2026-08-04

### [How the Optional Python FastAPI Sidecar Integrates for Raster and Vector Processing in GeoLibre](/opengeos/GeoLibre/how-does-the-optional-python-sidecar-fastapi-integrate-for-raster-and-vector-processing)

Discover how the optional Python FastAPI sidecar in GeoLibre integrates for raster and vector processing, offloading geoprocessing tasks to Python libraries and browser engines.

- Tags: how-to-guide
- Published: 2026-08-04

### [How the Whitebox Geoprocessing Toolbox Executes 1000+ Tools in the Browser Using WebAssembly](/opengeos/GeoLibre/how-does-the-whitebox-geoprocessing-toolbox-execute-over-1000-tools-in-the-browser-using-webassembly)

Discover how the Whitebox geoprocessing toolbox runs over 1000 GIS tools in your browser via WebAssembly. Learn about lazy-loading, WASI runtime, and in-memory file systems for serverless execution.

- Tags: internals
- Published: 2026-08-04

### [How the GeoLibre Plugin System Manages Plugins: PluginManager and FloatingPanelRegistry Explained](/opengeos/GeoLibre/how-does-the-geolibre-plugin-system-manage-plugins-using-plugin-manager-and-floating-panel-registry)

Understand how GeoLibre's plugin system uses PluginManager for registration and activation and FloatingPanelRegistry for UI overlays. Explore the opengeos/GeoLibre repository.

- Tags: internals
- Published: 2026-08-04

### [GeoLibreLayer Type Structure: How Layer Kinds Are Represented in GeoLibre](/opengeos/GeoLibre/what-is-the-structure-of-the-geolibrelayer-type-and-how-are-different-layer-kinds-represented)

Explore the GeoLibreLayer type structure. Understand how GeoLibre unifies 20 layer kinds including GeoJSON, vector tiles, and 3D Gaussian splats in a single extensible TypeScript data model.

- Tags: internals
- Published: 2026-08-04

### [How to Sync GeoLibre Layers Between the Store and MapLibre Using MapController.syncLayers](/opengeos/GeoLibre/what-is-the-process-for-syncing-geolibre-layers-between-the-store-and-maplibre-via-mapcontroller-synclayers)

Learn to sync GeoLibre layers between your store and MapLibre using MapController.syncLayers. Discover efficient updates for sources, layers, and styling.

- Tags: how-to-guide
- Published: 2026-08-04

### [How GeoLibre's Store-Driven Architecture Synchronizes with MapLibre Using Zustand](/opengeos/GeoLibre/how-does-geolibre-s-store-driven-architecture-synchronize-with-maplibre-using-zustand)

Discover how GeoLibre's store-driven architecture synchronizes with MapLibre using Zustand. Learn how state changes in Zustand update MapLibre GL for seamless synchronization.

- Tags: architecture
- Published: 2026-08-04

### [How to Troubleshoot Common GeoLibre Issues: Layer Loading, Project Saving, and Plugin Activation](/opengeos/GeoLibre/geolibre-troubleshoot-layer-loading-project-save-plugin-activation)

Troubleshoot common GeoLibre issues like layer loading, project saving, and plugin activation. Learn quick fixes for stale cache, sync failures, and plugin states.

- Tags: how-to-guide
- Published: 2026-08-03

### [How the Tauri v2 Desktop Build Works in the GeoLibre npm Workspaces Monorepo](/opengeos/GeoLibre/geolibre-tauri-v2-desktop-build-npm-workspaces)

Explore how Tauri v2 desktop builds integrate into the GeoLibre npm workspaces monorepo. Understand the bundling of Vite web UI, Rust binaries, and Python sidecar.

- Tags: internals
- Published: 2026-08-03

### [How to Run GeoLibre's Test Suites: TSX Frontend Tests and Pytest Backend Tests Explained](/opengeos/GeoLibre/geolibre-testing-frameworks-run-tests)

Learn how to run GeoLibre's tsx frontend and pytest backend test suites. This guide explains the testing frameworks and execution process for the opengeos/GeoLibre repository.

- Tags: how-to-guide
- Published: 2026-08-03

### [How GeoLibre Implements Internationalization with react-i18next and RTL Support](/opengeos/GeoLibre/geolibre-internationalization-react-i18next-rtl-support)

Discover GeoLibre's internationalization strategy using react-i18next. Learn how it automatically detects RTL languages and adapts layouts with Tailwind logical utilities.

- Tags: how-to-guide
- Published: 2026-08-03

### [How to Use the GeoLibre Python Package in Jupyter Notebooks with Anywidget](/opengeos/GeoLibre/geolibre-python-package-jupyter-notebooks-anywidget)

Learn to use the geolibre Python package in Jupyter notebooks with anywidget. Integrate the GeoLibre web app seamlessly and sync project state for efficient geospatial analysis.

- Tags: how-to-guide
- Published: 2026-08-03

### [GeoLibre Android App vs. Web/Desktop Builds: Key Differences Explained](/opengeos/GeoLibre/geolibre-android-app-vs-web-desktop-builds)

Discover GeoLibre Android app differences vs web/desktop builds. Learn about feature limitations and the powerful Tauri v2 desktop build with Whitebox geoprocessing and PostgreSQL support.

- Tags: deep-dive
- Published: 2026-08-03

### [How to Render 3D Tiles, LiDAR Point Clouds, and Gaussian Splats in GeoLibre Using deck.gl](/opengeos/GeoLibre/geolibre-render-3d-tiles-lidar-gaussian-splats-deck-gl)

Learn how GeoLibre renders 3D Tiles LiDAR point clouds and Gaussian splats using a single deck.gl overlay with the MapboxOverlay adapter. Visualize complex geospatial data efficiently.

- Tags: how-to-guide
- Published: 2026-08-03

### [GeoLibre File Format Support and DuckDB‑WASM Spatial Conversion: A Complete Guide](/opengeos/GeoLibre/geolibre-import-file-formats-duckdb-wasm-spatial-conversion)

Discover GeoLibre's extensive vector format support including GeoJSON GeoParquet and more. Learn how DuckDB-WASM Spatial converts these files using ST_Read and GDAL.

- Tags: how-to-guide
- Published: 2026-08-03

### [How GeoLibre Performs Client-Side Vector Analysis with Turf.js and DuckDB-WASM Spatial](/opengeos/GeoLibre/geolibre-client-side-vector-analysis-turfjs-duckdb-spatial)

Discover how GeoLibre achieves fast client-side vector analysis with Turf.js for GeoJSON and DuckDB-WASM Spatial for large datasets and complex spatial SQL queries in your browser.

- Tags: how-to-guide
- Published: 2026-08-03

### [How the Time Slider Plugin in GeoLibre Animates Time Series Raster and Vector Data](/opengeos/GeoLibre/geolibre-time-slider-plugin-animate-time-series)

Discover how GeoLibre's Time Slider plugin animates time series raster and vector data. It synchronizes with Zustand to control timelines for tiles, filters, and overlays.

- Tags: how-to-guide
- Published: 2026-08-03

### [How to Embed GeoLibre in an iframe Using @geolibre/embed](/opengeos/GeoLibre/geolibre-embed-iframe-geolibre-embed-package)

Easily embed GeoLibre maps in iframes with the @geolibre/embed package. Learn how to use createEmbed and configure your map for seamless integration.

- Tags: how-to-guide
- Published: 2026-08-03

### [How to Integrate External Data Sources with GeoLibre: Overture Maps, Planetary Computer, and Earth Engine](/opengeos/GeoLibre/geolibre-integrate-external-data-sources)

Integrate Overture Maps, Planetary Computer, and Earth Engine with GeoLibre by implementing the TimelapseProvider interface. Learn how to add external raster services.

- Tags: how-to-guide
- Published: 2026-08-03

### [GeoLibre Python Sidecar (FastAPI) Architecture: A Complete Guide to Geoprocessing Tools and Implementation](/opengeos/GeoLibre/geolibre-python-sidecar-fastapi-architecture-tools)

Explore the GeoLibre Python sidecar architecture. Learn how FastAPI securely exposes geoprocessing tools like WhiteboxTools, GDAL, GeoPandas, and more via an async API.

- Tags: architecture
- Published: 2026-08-03

### [Linux WebKitGTK Performance Issues in GeoLibre: 5 Causes of Map Panning Lag](/opengeos/GeoLibre/geolibre-linux-webkitgtk-performance-issues)

Discover 5 causes of Linux WebKitGTK performance issues in GeoLibre's map panning lag. Learn how UI thread blocking impacts frame rates and explore solutions.

- Tags: performance
- Published: 2026-08-03

### [How to Deploy GeoLibre Using Docker and Nginx: Production Deployment Guide](/opengeos/GeoLibre/geolibre-deploy-docker-nginx)

Deploy GeoLibre with Docker and Nginx. Learn to build a static UI with Vite, serve it via Nginx, and proxy requests to the FastAPI sidecar for a robust production setup.

- Tags: how-to-guide
- Published: 2026-08-03

### [CesiumJS Integration in GeoLibre: 3D Globe and MapLibre Camera Synchronization](/opengeos/GeoLibre/geolibre-cesiumjs-integration-3d-globe-camera-sync)

Discover how GeoLibre integrates CesiumJS for 3D globe views. Learn how it synchronizes cameras with MapLibre using pure math and a Zustand store for seamless visualization.

- Tags: deep-dive
- Published: 2026-08-03

### [SQL Workspace Capabilities in GeoLibre: DuckDB, PostGIS (PGlite), and Apache Sedona Integration](/opengeos/GeoLibre/geolibre-sql-workspace-duckdb-pglite-cereusdb)

Explore GeoLibre's SQL Workspace, integrating DuckDB, PGlite (PostGIS), and Apache Sedona for browser-based spatial query execution directly on map vector layers.

- Tags: deep-dive
- Published: 2026-08-03

### [How GeoLibre's Client-Side Whitebox WASM Geoprocessing Toolbox Enables Serverless Operations](/opengeos/GeoLibre/geolibre-whitebox-wasm-geoprocessing-serverless)

Discover how GeoLibre's client-side Whitebox WASM toolbox enables serverless geoprocessing, running complex tasks entirely in the browser without remote servers.

- Tags: internals
- Published: 2026-08-03

### [How to Create a Custom Plugin for GeoLibre Using the Plugin API](/opengeos/GeoLibre/geolibre-create-custom-plugin-api)

Learn to create a custom plugin for GeoLibre with the Plugin API. Implement GeoLibrePlugin interface and register with PluginManager to extend GeoLibre functionality.

- Tags: how-to-guide
- Published: 2026-08-03

### [What Layer Types Are Supported in GeoLibre (GeoJSON, XYZ, WMS, COG, PMTiles, 3D Tiles) and How Are They Rendered?](/opengeos/GeoLibre/geolibre-supported-layer-types-rendering)

Explore GeoLibre's supported layer types like GeoJSON, XYZ, WMS, COG, PMTiles, and 3D Tiles. Discover how MapLibre, Cesium, and Deck.gl render 2D, 3D, and advanced visualizations.

- Tags: api-reference
- Published: 2026-08-03

### [How GeoLibre's Zustand Store Architecture Manages Layer Synchronization with MapController](/opengeos/GeoLibre/geolibre-zustand-store-architecture-mapcontroller-layer-sync)

Discover how GeoLibre's Zustand store architecture synchronizes map layers with MapController. Learn about add, update, remove, and reorder operations for seamless map state management.

- Tags: architecture
- Published: 2026-08-03

### [How to Implement the Plugin API for Third-Party GeoLibre Extensions](/opengeos/GeoLibre/how-to-implement-plugin-api-third-party-geolibre-extensions)

Learn to implement the GeoLibre plugin API to extend functionality. Build custom map controls, layers, and UI panels with @geolibre/plugins and PluginManager.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Configure Cross-Origin Resource Sharing (CORS) for Remote Tile Sources in GeoLibre](/opengeos/GeoLibre/how-to-configure-cors-remote-tile-sources)

Configure CORS for remote tile sources in GeoLibre. Learn how GeoLibre proxies requests and injects headers to securely fetch tiles from external services.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Build Custom Tauri Commands for Native Filesystem Access in GeoLibre](/opengeos/GeoLibre/how-to-build-custom-tauri-commands-native-filesystem-access)

Learn to build custom Tauri commands for native filesystem access. Securely use Rust and `std::fs` APIs with `app.fs_scope().is_allowed()` for your GeoLibre project.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Set Up the SQL Workspace with PostGIS (PGlite) for Browser Spatial SQL](/opengeos/GeoLibre/how-to-set-up-sql-workspace-postgis-browser-spatial-sql)

Set up the SQL Workspace with PostGIS (PGlite) for browser spatial SQL. Query GeoJSON layers directly in your browser without a backend server using this powerful tool.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Implement Drag-and-Drop File Handling for Vector and Raster Formats in GeoLibre](/opengeos/GeoLibre/how-to-implement-drag-and-drop-file-handling-vector-raster)

Implement drag-and-drop file handling for vector and raster formats in GeoLibre. Learn how GeoLibre processes data client-side or via a FastAPI side-car.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Configure MapLibre Layer Synchronization with deck.gl Raster Overlays in GeoLibre](/opengeos/GeoLibre/how-to-configure-maplibre-layer-sync-deckgl-raster-overlays)

Learn how to configure MapLibre layer synchronization with deck.gl raster overlays in GeoLibre. Achieve seamless integration and consistent view states for your geospatial applications.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Write Custom Whitebox Geoprocessing Tools for the GeoLibre Python Sidecar](/opengeos/GeoLibre/how-to-write-custom-whitebox-tools-python-sidecar)

Learn to write custom Whitebox geoprocessing tools for the GeoLibre Python sidecar. Extend GeoLibre's toolbox using the whitebox-workflows API and register custom tools easily.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Build Embedded iframe Integrations with @geolibre/embed](/opengeos/GeoLibre/how-to-build-embedded-iframe-integrations-geolibre-embed)

Learn to build embedded iframe integrations using @geolibre/embed. Control map views, layers, and selections programmatically with a type-safe client for seamless interaction.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Implement Offline-First Data Workflows with Service Workers in GeoLibre](/opengeos/GeoLibre/how-to-implement-offline-first-data-workflows-service-workers)

Learn to implement offline-first data workflows with service workers in GeoLibre. Cache assets and map tiles for seamless offline access after one online visit.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Configure Environment Variables for Cesium Ion Token Provisioning in GeoLibre](/opengeos/GeoLibre/how-to-configure-env-vars-cesium-ion-token-provisioning)

Configure environment variables for Cesium Ion token provisioning in GeoLibre. Learn how to set VITE_CESIUM_TOKEN or CESIUM_TOKEN for seamless integration.

- Tags: how-to-guide
- Published: 2026-08-02

### [GeoLibre `.geolibre.json` Project Format Schema: Complete Technical Reference](/opengeos/GeoLibre/what-is-geolibre-json-project-format-schema)

Explore the .geolibre.json project format schema, the single source of truth for GeoLibre workspaces. Understand how it serializes application state, basemaps, layers, and more using JSON.

- Tags: api-reference
- Published: 2026-08-02

### [How to Implement the Time Slider Plugin for Temporal Geospatial Data in GeoLibre](/opengeos/GeoLibre/how-to-implement-time-slider-plugin-temporal-geospatial-data)

Implement the GeoLibre Time Slider plugin to interactively explore temporal geospatial data. Scrub Zarr or NetCDF time series seamlessly without rebuilding map layers.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Debug WebKitGTK Performance Issues on Linux Desktop Builds](/opengeos/GeoLibre/how-to-debug-webkitgtk-performance-linux)

Debug WebKitGTK performance issues on Linux desktop builds. Learn to identify UI thread jank with timing logs and GTK profiling tools for smoother map interactions.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Create Custom Map Projections with Planetary Basemaps in GeoLibre](/opengeos/GeoLibre/how-to-create-custom-map-projections-planetary-basemaps)

Learn how to create custom map projections with planetary basemaps in GeoLibre. This guide explains how to convert equirectangular planetary data into Web-Mercator tiles, extending reprojection logic for your needs.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Configure Apache Sedona SQL Engine for Spatial SQL Queries in the Browser](/opengeos/GeoLibre/how-to-configure-apache-sedona-sql-browser)

Configure Apache Sedona SQL for in-browser spatial SQL queries with GeoLibre. Leverage WebAssembly for fast local processing or Python fallback, handling up to 50,000 features automatically.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Run GeoPandas/Shapely Tools in the Browser via Pyodide](/opengeos/GeoLibre/how-to-run-geopandas-shapely-tools-browser-pyodide)

Run GeoPandas and Shapely in your browser with GeoLibre and Pyodide. Experience identical geometry processing without network latency using pure-Python vector logic.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Implement a CesiumJS 3D Globe as a Secondary Map Pane with Camera Sync](/opengeos/GeoLibre/how-to-implement-cesiumjs-3d-globe-secondary-map-pane-camera-sync)

Learn how to sync a CesiumJS 3D globe with 2D map panes using a shared Zustand store for bidirectional camera control. Mirror views in real-time across rendering engines.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Set Up Mutual TLS (mTLS) Authentication in the GeoLibre Desktop App](/opengeos/GeoLibre/how-to-set-up-mtls-authentication-geolibre-desktop-app)

Secure your GeoLibre desktop app with mutual TLS mTLS authentication. Learn how to set environment variables for certificates and passwords to enable secure connections easily.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Use DuckDB-WASM Spatial for Client-Side Vector File Conversion in GeoLibre](/opengeos/GeoLibre/how-to-use-duckdb-wasm-spatial-client-side-vector-conversion)

Convert vector files like GeoPackage and Shapefile client-side with DuckDB-WASM Spatial in GeoLibre. Read files via SQL queries directly in your browser without server interaction.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Build and Deploy GeoLibre as a Progressive Web App](/opengeos/GeoLibre/how-to-build-deploy-geolibre-progressive-web-app)

Learn how to build and deploy GeoLibre as a Progressive Web App. Generate a web-ready bundle with a manifest and service worker for static hosting.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Configure the Python Sidecar FastAPI Server for Offline Geoprocessing](/opengeos/GeoLibre/how-to-configure-python-sidecar-fastapi-for-offline-geoprocessing)

Configure the Python sidecar FastAPI server for offline geoprocessing in GeoLibre. Install extras, set environment variables, and verify server binding for efficient local data processing.

- Tags: how-to-guide
- Published: 2026-08-02

### [How to Implement Custom Layer Types in the GeoLibre Plugin System](/opengeos/GeoLibre/how-to-implement-custom-layer-types-in-geolibre-plugin-system)

Implement custom layer types in GeoLibre using the plugin system. Register your MapLibre custom layer in activate and clean up in deactivate for full functionality.

- Tags: how-to-guide
- Published: 2026-08-02

### [GeoLibre npm Workspaces Monorepo Structure: Apps, Packages, and Workers Explained](/opengeos/GeoLibre/what-is-monorepo-structure-npm-workspaces)

Understand the GeoLibre npm workspaces monorepo structure. Learn how apps packages and workers organize your React desktop app UI libraries and Cloudflare Workers efficiently.

- Tags: internals
- Published: 2026-08-01

### [How the Optional Raster Extra Enables Server-Side Processing with Rasterio in GeoLibre](/opengeos/GeoLibre/how-does-optional-raster-extra-enable-server-side-processing-rasterio)

Discover how the GeoLibre optional raster extra enables server-side raster processing with rasterio and numpy. Execute spatial algorithms securely on the server.

- Tags: deep-dive
- Published: 2026-08-01

### [How DuckDB-WASM Handles GeoParquet, Shapefiles, KML, and KMZ Files in GeoLibre](/opengeos/GeoLibre/how-does-duckdb-wasm-handle-geoparquet-shapefiles-kml-kmz)

Learn how DuckDB-WASM reads GeoParquet, Shapefiles, KML, and KMZ files. Discover its unified SQL pipeline and browser-based GeoJSON conversion via GDAL ST_Read.

- Tags: how-to-guide
- Published: 2026-08-01

### [How GeoLibre's React-i18next Internationalization System Works: A Deep Dive](/opengeos/GeoLibre/how-does-i18n-system-work-react-i18next-locale-files)

Explore GeoLibre's React i18n system. Discover how it uses i18next and react-i18next for dynamic locale loading and attribute synchronization.

- Tags: deep-dive
- Published: 2026-08-01

### [How the .geolibre.json Project Format Stores Layer and View State in GeoLibre](/opengeos/GeoLibre/how-does-geolibre-json-project-format-store-layer-view-state)

Discover how the .geolibre.json format stores GeoLibre project state, including map view and layer definitions, within a single JSON document.

- Tags: internals
- Published: 2026-08-01

### [WebKitGTK Map Rendering Performance Issues on Linux: A Technical Deep Dive](/opengeos/GeoLibre/what-causes-webkitgtk-map-rendering-performance-issues-linux)

Investigate WebKitGTK map rendering performance issues on Linux. Discover why synchronous WebGL on the main thread impacts UI responsiveness and explore potential solutions.

- Tags: deep-dive
- Published: 2026-08-01

### [GeoLibre Jupyter Anywidget Embedding: How the Python Package Bridges Python and Interactive Maps](/opengeos/GeoLibre/how-does-jupyter-anywidget-embedding-work-python-package)

Learn how GeoLibre embeds interactive maps in Jupyter using Python and anywidget. Get bidirectional state sync and RPC messaging for seamless integration.

- Tags: how-to-guide
- Published: 2026-08-01

### [How Tauri v2 Provides Native Filesystem Access for MBTiles and Rasters](/opengeos/GeoLibre/how-does-tauri-v2-provide-native-filesystem-access-mbtiles-rasters)

Discover how Tauri v2 unlocks native filesystem access for MBTiles and rasters. Learn about its I/O abstraction layer bridging JS web APIs with platform-native dialogs and binary operations for efficient geospatial data handling.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the Whitebox Geoprocessing Toolbox Integrates via the GeoLibre Sidecar](/opengeos/GeoLibre/how-does-whitebox-geoprocessing-toolbox-integrate-sidecar)

Discover how the Whitebox geoprocessing toolbox integrates with GeoLibre via a Python FastAPI sidecar. Learn about REST endpoints for tool discovery, job submission, and result retrieval.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the GeoLibre SQL Workspace Supports Apache Sedona and CereusDB: A Technical Deep Dive](/opengeos/GeoLibre/how-does-sql-workspace-support-apache-sedona-cereusdb)

Discover how the GeoLibre SQL Workspace powers Apache Sedona and CereusDB using its dual-engine architecture. Explore automatic engine selection for optimal performance.

- Tags: deep-dive
- Published: 2026-08-01

### [How to Configure mTLS Client Certificates for Enterprise HTTPS Servers in GeoLibre](/opengeos/GeoLibre/how-to-configure-mtls-client-certificates-enterprise-https-servers)

Secure enterprise HTTPS servers by configuring mTLS client certificates in GeoLibre. Set environment variables for automatic certificate presentation and mutual TLS authentication.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the GeoLibre Docker Container Bundles Nginx and the Python Sidecar](/opengeos/GeoLibre/how-does-docker-container-image-bundle-nginx-web-app-sidecar)

Discover how the GeoLibre Docker container uses multi-stage builds to bundle Nginx and a Python FastAPI sidecar. Learn how Nginx reverse proxies the sidecar at the /sidecar path.

- Tags: internals
- Published: 2026-08-01

### [How to Configure a Cesium Ion Token for 3D Globe Rendering in GeoLibre](/opengeos/GeoLibre/how-to-configure-cesium-ion-token-3d-globe-rendering)

Easily configure your Cesium Ion token in GeoLibre for stunning 3D globe rendering. Learn how to set the token and pass it to CesiumCanvas for world imagery and terrain.

- Tags: how-to-guide
- Published: 2026-08-01

### [How GeoLibre Implements PWA Offline Support with Workbox Service Workers](/opengeos/GeoLibre/how-does-pwa-offline-support-work-workbox-service-workers)

Discover how GeoLibre achieves PWA offline support using Workbox service workers. Learn about its unique architecture for seamless offline map functionality after your first visit.

- Tags: how-to-guide
- Published: 2026-08-01

### [GeoLibre Plugin API: How to Create Custom Plugins for Maps and Geospatial Data](/opengeos/GeoLibre/what-is-plugin-api-creating-custom-geolibre-plugins)

Learn to build custom plugins for maps and geospatial data using the GeoLibre plugin API. Gain full control over maps, layers, UI, and more with this typed JavaScript interface.

- Tags: how-to-guide
- Published: 2026-08-01

### [How GeoLibre Plugins Work and How They Are Registered: A Deep Dive into the Architecture](/opengeos/GeoLibre/how-do-geolibre-plugins-work-registered)

Discover how GeoLibre plugins work and get registered. Explore the dynamic module discovery system and Plugin Manager architecture in opengeos/GeoLibre.

- Tags: deep-dive
- Published: 2026-08-01

### [How Cesium Layer Sync Works for GeoJSON, XYZ, and 3D Tiles in GeoLibre](/opengeos/GeoLibre/how-does-cesium-layer-sync-work-geojson-xyz-3d-tiles)

Discover how GeoLibre's CesiumLayerSync synchronizes GeoJSON, XYZ, and 3D Tiles by diffing layers and managing Cesium viewer instances for seamless geospatial data visualization.

- Tags: how-to-guide
- Published: 2026-08-01

### [How Bidirectional Camera Sync Works Between MapLibre and Cesium in GeoLibre](/opengeos/GeoLibre/how-is-bidirectional-camera-sync-handled-maplibre-cesium)

Discover how GeoLibre achieves bidirectional camera sync between MapLibre and Cesium. Learn about the wrapper class and locking mechanism for seamless two-way updates.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the CesiumJS 3D Globe Integrates with the 2D MapLibre Map](/opengeos/GeoLibre/how-does-cesiumjs-3d-globe-integrate-2d-maplibre-map)

Learn how GeoLibre seamlessly integrates the CesiumJS 3D globe with the MapLibre 2D map. Discover synchronization techniques for layers and camera views using Zustand and CesiumLayerSync.

- Tags: how-to-guide
- Published: 2026-08-01

### [How Pyodide Enables Browser-Based GeoPandas/Shapely Vector Processing](/opengeos/GeoLibre/how-does-pyodide-enable-browser-based-geopandas-shapely-vector-processing)

Learn how Pyodide enables browser-based GeoPandas Shapely vector processing. Execute complex geospatial operations client-side without a server. Discover GeoLibre's powerful capabilities.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the Python FastAPI Sidecar Integrates with the GeoLibre Desktop App](/opengeos/GeoLibre/how-does-python-sidecar-fastapi-integrate-desktop-app)

Discover how the Python FastAPI sidecar integrates with the GeoLibre desktop app. Learn how HTTP requests handle geospatial processing without blocking the main thread.

- Tags: how-to-guide
- Published: 2026-08-01

### [How MapController.syncLayers Reconciles MapLibre Sources and Layers in GeoLibre](/opengeos/GeoLibre/how-does-mapcontroller-sync-layers-reconcile-maplibre-sources-layers)

Discover how MapController syncLayers in GeoLibre synchronizes MapLibre sources and layers with application state for a consistent visual map. Learn about the reconciliation algorithm.

- Tags: internals
- Published: 2026-08-01

### [How GeoLibre's Store-Driven Architecture with Zustand Works](/opengeos/GeoLibre/how-does-geolibre-store-driven-architecture-zustand-work)

Discover how GeoLibre's store-driven architecture leverages Zustand for efficient state management, enabling undo/redo and cross-component synchronization. Learn more.

- Tags: architecture
- Published: 2026-08-01

### [How to Set Up the GeoLibre Development Environment from Source: A Complete Guide](/opengeos/GeoLibre/how-to-set-up-development-environment-from-source)

Set up the GeoLibre development environment from source. Follow our guide to install Node.js Rust Python and run npm install and npm run dev or tauri dev for quick local development.

- Tags: how-to-guide
- Published: 2026-08-01

### [How to Create Custom MapLibre Style Expressions in GeoLibre: A Complete Guide](/opengeos/GeoLibre/how-to-create-custom-maplibre-style-expressions)

Master MapLibre style expressions with GeoLibre. Build, validate, and compile custom expressions using validateMapExpression for type safety and live previews.

- Tags: how-to-guide
- Published: 2026-08-01

### [How to Handle Coordinate Reference Systems and Projections in GeoLibre](/opengeos/GeoLibre/how-to-handle-crs-and-projections)

Learn how to handle coordinate reference systems and projections in GeoLibre. GeoLibre automatically detects CRS types and reprojects data to EPSG:4326 for seamless MapLibre integration.

- Tags: how-to-guide
- Published: 2026-08-01

### [How GeoLibre Implements Deck.gl Integration for Advanced WebGL Map Visualizations](/opengeos/GeoLibre/how-does-deck-gl-integration-work-for-advanced-visualizations)

Discover how GeoLibre integrates deck.gl for advanced WebGL map visualizations. Experience high-performance scatter plots, 3D tiles, and heatmaps with synchronized views.

- Tags: deep-dive
- Published: 2026-08-01

### [How to Integrate GeoAgent and Geocoding in GeoLibre: AI-Assisted Mapping Features](/opengeos/GeoLibre/how-to-integrate-ai-assisted-features)

Integrate GeoAgent and geocoding AI features in GeoLibre. Register plugins, configure credentials, and use core APIs for AI-assisted mapping. Learn how to enhance your GeoLibre project today.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the Pyodide Vector Engine Runs GeoPandas in the Browser: A Deep Dive into GeoLibre's WebAssembly Architecture](/opengeos/GeoLibre/how-does-pyodide-vector-engine-run-geopandas-in-browser)

Discover how GeoLibre runs GeoPandas in the browser using WebAssembly and Pyodide. Learn about its architecture for efficient vector operations directly in your web application.

- Tags: deep-dive
- Published: 2026-08-01

### [How to Configure Custom XYZ or Vector Tile Basemaps in GeoLibre](/opengeos/GeoLibre/how-to-configure-custom-xyz-vector-tile-basemaps)

Learn to configure custom XYZ or vector tile basemaps in GeoLibre. Store a tile URL template in the global Zustand store to convert on-the-fly into MapLibre GL JS styles for raster or vector sources.

- Tags: how-to-guide
- Published: 2026-08-01

### [How GeoLibre Real-Time Collaboration Synchronization Works: WebSocket Architecture Explained](/opengeos/GeoLibre/how-does-real-time-collaboration-sync-work)

Discover how GeoLibre uses WebSocket architecture with Cloudflare Durable Objects for real-time collaboration synchronization of edits, cursors, and chat across users. Learn more about opengeos/GeoLibre.

- Tags: internals
- Published: 2026-08-01

### [How to Implement Virtual Fields in the GeoLibre Attribute Table: A Complete Developer Guide](/opengeos/GeoLibre/how-to-implement-virtual-fields-in-attribute-table)

Learn how to implement virtual fields in the GeoLibre attribute table using MapLibre expressions. This guide details integration for attribute tables and data-driven styling.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the `.geolibre.json` Project File Schema Works: A Complete Technical Guide](/opengeos/GeoLibre/how-does-geolibre-json-project-file-schema-work)

Explore the .geolibre.json project file schema and understand how it serializes the GeoLibre application state. Save, share, and reopen projects seamlessly.

- Tags: deep-dive
- Published: 2026-08-01

### [How to Add Support for a New Raster Format Like COG or GeoTIFF in GeoLibre](/opengeos/GeoLibre/how-to-add-support-for-new-raster-format)

Learn how to add new raster formats like COG or GeoTIFF to GeoLibre. Extend file detection, add decoding logic, register the source, and your UI will automatically support the new format.

- Tags: how-to-guide
- Published: 2026-08-01

### [How GeoLibre Distinguishes Built-In vs External Plugins](/opengeos/GeoLibre/how-plugin-system-distinguishes-built-in-external-plugins)

Discover how GeoLibre separates built-in and external plugins. Learn about static import for built-ins and dynamic discovery with plugin.json manifests for external extensions.

- Tags: internals
- Published: 2026-08-01

### [How to Implement Time-Slider Functionality for Raster Time Series in GeoLibre](/opengeos/GeoLibre/how-to-implement-time-slider-for-raster-time-series)

Implement time-slider functionality for raster time series in GeoLibre. Explore interactive raster data with the Time Slider plugin, featuring UI control, timestamp detection, and source synchronization.

- Tags: how-to-guide
- Published: 2026-08-01

### [How GeoLibre's SQL Workspace Supports DuckDB, PostGIS/PGlite, and Apache Sedona](/opengeos/GeoLibre/how-sql-workspace-supports-duckdb-postgis-sedona)

Discover how GeoLibre's SQL Workspace unifies DuckDB, PostGIS/PGlite, and Apache Sedona with a single interface. Query spatial data seamlessly across engines.

- Tags: how-to-guide
- Published: 2026-08-01

### [How to Create a Custom Map Control in GeoLibre: The Complete Plugin Guide](/opengeos/GeoLibre/how-to-create-custom-map-control)

Learn to create a custom map control in GeoLibre by implementing the GeoLibrePlugin interface. This guide shows how to activate and deactivate custom controls for your mapping application.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the Whitebox Geoprocessing Toolbox Integrates with the GeoLibre UI: A Complete Technical Guide](/opengeos/GeoLibre/how-does-whitebox-geoprocessing-toolbox-integrate-with-ui)

Discover how GeoLibre integrates the Whitebox geoprocessing toolbox via a three-layer architecture for seamless catalog menu generation, deep-linking, and backend execution with FastAPI.

- Tags: how-to-guide
- Published: 2026-08-01

### [How to Configure PWA Offline Caching with Workbox in GeoLibre](/opengeos/GeoLibre/how-to-configure-pwa-offline-caching-with-workbox)

Learn to configure PWA offline caching with Workbox in GeoLibre. VitePWA precaches your app shell and implements runtime caching for essential assets and basemap tiles.

- Tags: how-to-guide
- Published: 2026-08-01

### [How the FastAPI Python Sidecar Communicates with the GeoLibre Frontend: A Complete Guide](/opengeos/GeoLibre/how-does-fastapi-python-sidecar-communicate-with-frontend)

Discover how the GeoLibre frontend communicates with its FastAPI Python sidecar using token-authenticated HTTP requests, URL resolution, and robust security measures. Learn the complete guide.

- Tags: how-to-guide
- Published: 2026-08-01

### [How to Implement a CesiumJS 3D Globe as a Secondary Map Pane in GeoLibre](/opengeos/GeoLibre/how-to-implement-cesiumjs-3d-globe-as-secondary-map-pane)

Learn to implement a CesiumJS 3D globe as a secondary map pane in GeoLibre. The CesiumCanvas component syncs layers and camera for a seamless 3D experience.

- Tags: how-to-guide
- Published: 2026-08-01

### [How `MapController.syncLayers` Synchronizes the Store with MapLibre in GeoLibre](/opengeos/GeoLibre/how-does-mapcontroller-synclayers-synchronize-between-store-and-maplibre)

Discover how MapController.syncLayers synchronizes your GeoLibre store with MapLibre GL. Learn about deterministic reconciliation for efficient layer management.

- Tags: internals
- Published: 2026-08-01

### [How to Add a New Data Source to the Add Data Menu in GeoLibre](/opengeos/GeoLibre/how-to-add-new-data-source-to-add-data-menu)

Learn to add a new data source to the Add Data menu in GeoLibre. Create a component using useAddDataSource and export it for automatic integration.

- Tags: how-to-guide
- Published: 2026-08-01

### [How DuckDB-WASM Spatial Converts Local Vector Files to GeoJSON: A Complete Technical Breakdown](/opengeos/GeoLibre/how-does-duckdb-wasm-spatial-convert-local-vector-files-to-geojson)

Learn how DuckDB-WASM Spatial converts local vector files to GeoJSON. Explore the technical steps including loading extensions, detecting geometry, and executing SQL for transformation. Read the full breakdown.

- Tags: deep-dive
- Published: 2026-08-01

### [How to Create a Custom Plugin for GeoLibre Using the Plugin Interface](/opengeos/GeoLibre/how-to-create-a-custom-plugin-for-geolibre-using-the-plugin-interface)

Develop a custom GeoLibre plugin using the Plugin Interface. Implement GeoLibrePlugin, register with PluginManager, and extend functionality without altering core code.

- Tags: how-to-guide
- Published: 2026-08-01

### [GeoLibre PMTiles Transformations: Vector Conversion and Subset Extraction Explained](/opengeos/GeoLibre/what-transformations-are-supported-by-geolibres-conversion-tools-for-pmtiles)

Discover GeoLibre PMTiles transformations: convert vector data and extract geographic subsets. Optimize your vector datasets with efficient PMTiles conversions.

- Tags: deep-dive
- Published: 2026-07-31

### [How GeoLibre's Browser-Based COG Conversion Works: Client-Side Cloud-Optimized GeoTIFF Processing](/opengeos/GeoLibre/how-do-geolibres-browser-based-conversion-tools-work-for-cog)

Discover how GeoLibre's browser-based tools convert GeoTIFFs to COGs client-side using WebAssembly. Achieve serverless processing and immediate streaming for your geospatial data.

- Tags: how-to-guide
- Published: 2026-07-31

### [How Turf.js Enables Client-Side Vector Processing in GeoLibre](/opengeos/GeoLibre/how-can-turfjs-be-used-for-client-side-vector-processing-in-geolibre)

Discover how GeoLibre leverages Turf.js for powerful client-side vector processing. Analyze GeoJSON FeatureCollections directly in your browser, removing server dependencies.

- Tags: how-to-guide
- Published: 2026-07-31

### [GeoLibre Attribute Table Query Operations: A Complete Guide to Filtering and Expressions](/opengeos/GeoLibre/what-query-operations-are-supported-by-the-geolibre-attribute-table)

Discover GeoLibre attribute table query operations including logical comparison pattern spatial and arithmetic expressions. Filter your data efficiently with this complete guide.

- Tags: how-to-guide
- Published: 2026-07-31

### [How GeoLibre's Attribute Table Integrates with Layer Selections: A Technical Deep Dive](/opengeos/GeoLibre/how-does-geolibres-attribute-table-integrate-with-layer-selections)

Discover how GeoLibre's attribute table seamlessly integrates with layer selections using a Zustand store for real-time bidirectional synchronization and multi-selection capabilities.

- Tags: deep-dive
- Published: 2026-07-31

### [How Layer Groups and Visibility Controls Are Managed in GeoLibre](/opengeos/GeoLibre/how-are-layer-groups-and-visibility-controls-managed-in-geolibre)

Discover how GeoLibre manages layer groups and visibility controls using a flat data model and utility functions to create hierarchical trees and compute effective visibility.

- Tags: internals
- Published: 2026-07-31

### [How GeoLibre Renders 3D Tiles for Point Clouds and Buildings](/opengeos/GeoLibre/how-does-geolibre-render-3d-tiles-for-point-clouds-and-buildings)

Discover how GeoLibre renders 3D Tiles for point clouds and buildings. Learn about native OGC 3D Tiles and proprietary format integration via Deck.gl.

- Tags: how-to-guide
- Published: 2026-07-31

### [What Vector Data Sources Does GeoLibre's Time Slider Support?](/opengeos/GeoLibre/what-data-sources-are-supported-by-geolibres-time-slider-for-vector-data)

Explore supported vector data sources for GeoLibre's Time Slider, including GeoJSON, Vector Tiles, PMTiles, MBTiles, and Zarr. Integrate with any time-dimension layer via bindLayerToTimeSlider.

- Tags: api-reference
- Published: 2026-07-31

### [How the Time Slider in GeoLibre Handles Time-Series Raster Data](/opengeos/GeoLibre/how-does-the-time-slider-in-geolibre-handle-time-series-raster-data)

Explore how GeoLibre's Time Slider efficiently manages time-series raster data using maplibre-gl-time-slider. Filter tiles by timestamp and perform pixel-level queries.

- Tags: how-to-guide
- Published: 2026-07-31

### [How GeoLibre Integrates Apache Sedona (CereusDB) into Its SQL Workspace](/opengeos/GeoLibre/how-does-geolibre-integrate-with-apache-sedna-cereusdb-in-the-sql-workspace)

Discover how GeoLibre integrates Apache Sedona (CereusDB) into its SQL Workspace. Learn about GeoJSON layer conversion, spatial SQL queries, and efficient data rendering for spatial analysis.

- Tags: how-to-guide
- Published: 2026-07-31

### [How to Use PostGIS in GeoLibre's SQL Workspace: PGlite Integration Guide](/opengeos/GeoLibre/can-postgis-or-pglite-be-used-within-geolibres-sql-workspace)

Integrate PostGIS in GeoLibre's SQL Workspace today. Leverage PGlite for in-browser spatial SQL with full PostGIS compatibility. No external servers needed.

- Tags: how-to-guide
- Published: 2026-07-31

### [How GeoLibre's SQL Workspace Supports DuckDB: In-Browser Spatial SQL Processing](/opengeos/GeoLibre/how-does-geolibres-sql-workspace-support-duckdb)

Discover how GeoLibre's SQL Workspace empowers in-browser spatial SQL with DuckDB. It processes queries client-side, handles cloud URLs, maps layers as tables, and converts geometries for visualization.

- Tags: how-to-guide
- Published: 2026-07-31

### [GeoLibre PWA Caching Strategies for Offline Functionality](/opengeos/GeoLibre/what-caching-strategies-does-geolibre-use-for-pwa-offline-functionality)

Discover GeoLibre's PWA caching strategies. Learn how its three-layer architecture with vite-plugin-pwa and Workbox enables full offline geospatial functionality efficiently.

- Tags: deep-dive
- Published: 2026-07-31

### [How GeoLibre Implements PWA Offline Support with Workbox](/opengeos/GeoLibre/how-does-geolibre-implement-pwa-offline-support-using-workbox)

Discover how GeoLibre achieves PWA offline support with Workbox. Learn about precaching the app shell and runtime-caching critical assets for seamless offline use.

- Tags: how-to-guide
- Published: 2026-07-31

### [GeoLibre Plugin APIs: The Complete Developer Guide to Custom Extensions](/opengeos/GeoLibre/what-apis-are-available-for-developing-custom-geolibre-plugins)

Explore the GeoLibre Plugin APIs for custom extensions. Discover how to control maps, manage layers, register UI components, and coordinate plugins with the GeoLibrePlugin interface and GeoLibreAppAPI.

- Tags: developer-guide
- Published: 2026-07-31

### [Using Shapely for In-Browser Geospatial Analysis with Pyodide in GeoLibre](/opengeos/GeoLibre/can-shapely-be-used-for-in-browser-geospatial-analysis-with-pyodide-in-geolibre)

Execute client-side geospatial analysis directly in your browser with Shapely and Pyodide in GeoLibre. Perform complex operations without server round trips.

- Tags: tutorial
- Published: 2026-07-31

### [How Pyodide Enables In-Browser GeoPandas Processing in GeoLibre](/opengeos/GeoLibre/how-does-pyodide-enable-in-browser-geopandas-processing)

Discover how GeoLibre uses Pyodide to run GeoPandas directly in your browser. Load Python, geopandas, and process vector data client-side for faster geospatial applications.

- Tags: deep-dive
- Published: 2026-07-31

### [What Processing Tasks Are Handled by the GeoLibre Python Sidecar?](/opengeos/GeoLibre/what-processing-tasks-are-handled-by-the-geolibre-python-sidecar)

Discover what processing tasks the GeoLibre Python sidecar handles. Learn about its Whitebox workflows, GDAL conversions, rasterio ops, GeoPandas analysis, Sedona SQL, and AI segmentation capabilities.

- Tags: internals
- Published: 2026-07-31

### [How the FastAPI Python Sidecar Communicates with the GeoLibre Frontend](/opengeos/GeoLibre/how-does-the-fastapi-python-sidecar-communicate-with-the-frontend)

Discover how GeoLibre's FastAPI Python sidecar communicates with its React frontend via a Tauri localhost server, utilizing secure tokens and a TypeScript fetch wrapper.

- Tags: internals
- Published: 2026-07-31

### [How Layer Synchronization Works Between Zustand and MapLibre GL JS in GeoLibre](/opengeos/GeoLibre/how-is-layer-synchronization-managed-between-zustand-and-maplibre-gl-js)

Discover how GeoLibre synchronizes layers between Zustand and MapLibre GL JS. Learn how the MapController uses a deterministic syncLayers routine to keep maps up-to-date with state changes.

- Tags: internals
- Published: 2026-07-31

### [What Are the Key State Modules in GeoLibre's Zustand Store?](/opengeos/GeoLibre/what-are-the-key-state-modules-in-geolibres-zustand-store)

Explore GeoLibre's Zustand store, featuring ten key state modules for managing project data, map views, layers, and collaboration in your geospatial applications.

- Tags: internals
- Published: 2026-07-31

### [How to Set Up the GeoLibre Development Environment from Source](/opengeos/GeoLibre/how-to-set-up-the-development-environment-from-source)

Set up the GeoLibre development environment from source. Follow clear steps to install dependencies, clone the repo, and launch the UI using npm install and npm run dev.

- Tags: getting-started
- Published: 2026-07-29

### [How to Add Support for COG (Cloud Optimized Geotiffs) Rasters in GeoLibre](/opengeos/GeoLibre/how-to-add-support-for-cog-cloud-optimized-geotiffs-rasters)

Learn how to add COG Cloud Optimized Geotiff raster support in GeoLibre. Discover regex detection, WASM conversion, and dual rendering engines for efficient raster data handling.

- Tags: how-to-guide
- Published: 2026-07-29

### [How to Implement Elevation Profile Analysis in GeoLibre](/opengeos/GeoLibre/how-to-implement-elevation-profile-analysis)

Learn to implement elevation profile analysis with GeoLibre. Sample terrain, compute statistics, and render interactive SVG charts. Export to CSV and SVG easily.

- Tags: how-to-guide
- Published: 2026-07-29

### [How Dynamic Plugin Loading from ZIP Files Works in GeoLibre](/opengeos/GeoLibre/how-does-the-dynamic-plugin-loading-from-zips-work)

Learn how GeoLibre dynamically loads plugins from ZIP files in the browser. Explore fflate decompression, manifest validation, and Object URL execution for efficient plugin management.

- Tags: internals
- Published: 2026-07-29

### [How to Register New Processing Algorithms in the GeoLibre Catalog](/opengeos/GeoLibre/how-to-register-new-processing-algorithms-in-the-catalog)

Learn to register new processing algorithms in the GeoLibre catalog. Implement the ProcessingAlgorithm interface, export your algorithm, and add it to the registry for automatic menu display.

- Tags: how-to-guide
- Published: 2026-07-29

### [How to Configure Nginx Reverse Proxy for the GeoLibre Web Build](/opengeos/GeoLibre/how-to-configure-nginx-reverse-proxy-for-the-web-build)

Easily configure your Nginx reverse proxy for the GeoLibre web build. Our template handles deep linking and API proxying, ensuring a smooth deployment.

- Tags: how-to-guide
- Published: 2026-07-29

### [How to Create Custom Symbology and Styling for Vector Layers in GeoLibre](/opengeos/GeoLibre/how-to-create-custom-symbology-and-styling-for-vector-layers)

Learn to create custom symbology and styling for vector layers in GeoLibre. Customize appearance using the Style panel, programmatic updates, or Mapbox-GL JSON.

- Tags: how-to-guide
- Published: 2026-07-29

### [How to Add Support for a New Remote Data Source in GeoLibre](/opengeos/GeoLibre/how-to-add-support-for-a-new-remote-data-source-provider)

Learn how to add a new remote data source to GeoLibre by implementing the TypeScript provider interface and registering it via the plugin manager. Enhance your geospatial data integration.

- Tags: how-to-guide
- Published: 2026-07-29

### [How to Create Custom Plugins for GeoLibre Using the Plugin API](/opengeos/GeoLibre/how-to-create-custom-plugins-for-geolibre-using-the-plugin-api)

Learn to create custom plugins for GeoLibre using its Plugin API. Extend mapping functionality with new controls, panels, and layers without modifying the core codebase.

- Tags: how-to-guide
- Published: 2026-07-29

### [How GeoLibre’s Store-Driven Architecture with Zustand Works: Core Patterns Explained](/opengeos/GeoLibre/how-does-the-store-driven-architecture-with-zustand-work-in-geolibre)

Discover GeoLibre's store-driven architecture with Zustand. Learn how this central store manages front-end state, enabling undo/redo functionality and efficient UI updates for developers.

- Tags: architecture
- Published: 2026-07-29

