Show HN: GeoLens – a self-hosted catalog and map builder for spatial data

ishiland1 pts0 comments

GeoLens: Open-Source Geospatial Data Catalog & Map Builder<br>Skip to main content Open Source · Self-Hosted · OGC API<br>The self-hosted catalog and map builder for your geospatial data<br>GeoLens is an open-source, self-hosted catalog and map builder for geospatial data. Search and preview datasets, compose multi-layer maps with 3D terrain, and serve them over open OGC APIs, all on infrastructure you control, with no telemetry.

Quickstart, the Docker-trial path self-host evaluators actually take)<br>plus a quiet monospace copy chip for the deploy command. The third<br>co-equal "View on GitHub" button was removed - it lives in the nav<br>(gated on REPO_PUBLIC) and was diluting the single clear action.<br>--> Get Started Try the live demo $ curl -fsSL https://getgeolens.com/install.sh | sh

Apache 2.0<br>OGC API · Features / Records / CQL2<br>Self-Hosted · Docker · VM<br>Star on GitHub

Built on PostGIS · MapLibre · Titiler · FastAPI | Open standards OGC API · STAC · DCAT

Search and discover<br>Find any dataset in seconds<br>Search across your entire GeoLens catalog by name and description. When an embedding provider is configured, you can also search by semantic meaning, so related datasets surface even when the exact words differ. Filter by geometry type (vector, raster, or table) and preview datasets on a map before you download.<br>Learn more ->

below overrides it to `inset: 0` at<br>max-width: 639px to prevent horizontal scroll on narrow viewports.<br>Do NOT move that override into an inline `style=""` attribute -<br>inline style specificity (1,0,0,0) beats the scoped media query and<br>the bug returns. See 215-04 SUMMARY for the original diagnosis. -->

Create and share maps<br>Compose multi-layer maps in minutes<br>Combine vector and raster datasets with point-and-click layer controls: reorder layers, set color ramps and filters, draw and edit features, switch basemaps, and tilt into 3D terrain. Then share a live map with a signed link or embed code, without writing SQL or leaving the browser.<br>Learn more ->

below overrides it to `inset: 0` at<br>max-width: 639px to prevent horizontal scroll on narrow viewports.<br>Do NOT move that override into an inline `style=""` attribute -<br>inline style specificity (1,0,0,0) beats the scoped media query and<br>the bug returns. See 215-04 SUMMARY for the original diagnosis. -->

Self-hosted install<br>One command. Your data, your infrastructure.<br>You do not need a cloud account. The full platform is open source under Apache 2.0: the entire catalog, map builder, and APIs, free to self-host. Run on a laptop, a single VM, or your own servers with Docker Compose. A community-maintained Helm chart is available for Kubernetes.

geolens - install<br>Copy<br>$ curl -fsSL https://getgeolens.com/install.sh | sh<br># or, from a source checkout:<br>$ bash scripts/install.sh

OK catalog ready at http://localhost:8080<br>OK OGC API at http://localhost:8080/api/collections

How it works<br>One stack. One docker compose up.<br>Every GeoLens deployment is the same handful of services, orchestrated by a single compose file, with no external search engine and no separate tile server to run.

1 Frontend<br>React + MapLibre UI: catalog, map builder, and 3D.<br>-><br>2 API<br>FastAPI: REST, OGC API, and tile endpoints.<br>-><br>3 Catalog & search<br>PostgreSQL + PostGIS + pgvector: spatial and semantic in one database.<br>-><br>4 Raster tiles<br>Titiler: Cloud-Optimized GeoTIFF tiling.

What GeoLens does<br>Everything your team needs to work with geospatial data

Search and semantic discovery<br>Find any dataset with full-text search, plus optional vector semantic ranking when you configure an embedding provider. Filter by geometry type, CRS, or date. You do not need SQL.

Map builder & sharing<br>Compose multi-layer maps in minutes, then share them with a signed link or embed a live, interactive map in any page.

3D terrain<br>Bind a DEM and tilt into 3D: hillshade, terrain exaggeration, and your choice of basemap in the built-in map builder, powered by MapLibre. You do not need desktop GIS.

Raster and COG tiles<br>Ingest Cloud-Optimized GeoTIFFs and large rasters, build VRT mosaics, and serve tiles via Titiler with automatic colormaps, without running a separate tile server.

AI assist (optional)<br>Bring an OpenAI-compatible endpoint or Anthropic key to ask about your catalog in plain language, create maps, and draft dataset descriptions. The feature is optional and off by default; GeoLens runs fully without it.

OGC API<br>Serve your datasets over OGC API - Features and Records, with CQL2 filtering and direct tile URLs for map clients. Compatible with QGIS, ArcGIS, and OGC clients.

Data ingestion<br>Drop in shapefiles, GeoTIFFs, GeoJSON, GeoPackages, COGs, and CSV. GeoLens validates, detects CRS, and indexes for you.

Self-hosted<br>Docker Compose on a laptop, a VM, or your own servers is the supported path. A community-maintained Helm chart is available for Kubernetes. Your infrastructure, your data; no cloud account required.

RBAC & access control<br>Admin, editor, and viewer roles with per-dataset permissions. OAuth...

catalog geolens self builder data search

Related Articles