← All projects

ageomaps

in-progress

A Rust desktop GIS for reproducible geospatial work: ingest data, run typed workflows, compare branches, and export reviewable outputs.

GISGeospatialRustDesktop App

Overview

ageomaps is a desktop GIS in Rust, built on one idea: an analysis should be a workflow you can read, re-run, and compare, not a pile of one-off clicks. You load spatial data, assemble steps, review the plan, run it, and export. Every step that touches data writes a typed receipt, so the project can show what happened and why.

The project is aimed at the middle ground between lightweight web maps and the full weight of QGIS or ArcGIS Pro: enough real geoprocessing to do serious work, but with the workflow itself treated as a first-class object.

The pieces that matter most:

  • Workflow state you can trust. Sessions checkpoint automatically; named saves, branches, Project Health, and side-by-side comparison make it possible to test an analysis and explain the differences between runs.
  • Real GIS engines behind typed Rust contracts. GEOS handles vector topology. GDAL-backed paths handle raster and terrain slices. The desktop surface stays mostly Rust, with native boundaries kept explicit.
  • Reviewable output. Export isn’t a screenshot. The export path builds PDF, PNG, SVG, and native Qt map outputs with methodology and stale-input review attached.
  • A local-assist path, not a black box. Natural-language planning compiles into the same reviewable WorkflowIR used by manual workflows. The worker protocol is in place; live local-model inference is opt-in and environment gated.

What I’m building

  • GEOS-backed vector analysis: buffer, clip, dissolve, overlay operations, spatial joins, and grid generation.
  • Raster and terrain workflow slices: raster clip/reproject/resample, reclassify, raster calculate, zonal statistics, slope, aspect, hillshade, and viewshed.
  • Validated data ingest: GeoJSON, read-only FileGDB, GeoParquet, municipal ArcGIS FeatureServer fixtures with opt-in live refresh, plus beta fixture-backed PostGIS and WFS connection flows.
  • Session and review tooling: workflow plan review, typed receipts, Project Health, automatic checkpoints, named saves, branch checkout, and branch comparison.
  • Desktop and export surfaces: a Qt shell with a MapLibre map canvas, layer/table panels, history and comparison panels, export review, an out-of-process export worker, and native Qt map export.

Status

In active development and not publicly released yet. The core import -> workflow -> review/export loop is working, with promoted coverage for GEOS vector operations, raster/terrain workflow slices, Project Health, checkpointing, branching, branch comparison, the Qt/MapLibre shell surface, and PDF/PNG/SVG/native map export paths.

The remaining work is about promotion and polish, not inventing the whole system from scratch: broader CRS support, row-level comparison diffs, more advanced vector/table operations, shell runtime polish for editing surfaces, full PPTX/DOCX/HTML/atlas exports, and moving beta/gated connector and natural-language paths into a default user-facing release.