Projects

The core geospatial project stack.

These repositories are documented as a connected stack for people who may use, run, extend, or maintain the system. The plain-English system flow is: validate data, process or enrich it, load accepted layers, refresh the operational map, and use assistant tools that explain their map actions.

System Story

From incoming data to operational map review.

The core stack is intentionally practical. Files are checked before load, GeoAI output becomes GIS data, the gateway tracks and notifies changes, the Status Board visualizes layers, and MCP/assistant tools add controlled context around map clicks and incidents.

ETL validation GeoAI processing Data gateway PostGIS / GeoServer Status Board map MCP tools

Operational map viewer and status dashboard

Geospatial Status Board

Public GitHub repo - geospatial-status-board

Grails and MapLibre operational map for incidents, infrastructure, GeoAI outputs, response support, weather context, MGRS, and reviewed assistant map actions.

It works by running a Grails web app with a simple H2 default path, optional PostGIS/GeoServer integration for spatial services, and MapLibre for the browser map tools.

How it fits: This is the visible map review surface where gateway refresh events, GeoAI output, incident data, support lookup, and assistant actions become something an analyst can inspect.

Grails MapLibre GeoServer PostGIS WFS Dashboard SignalR MGRS Incident mapping GeoAI layers

Python-based GeoAI workflow platform

GeoAI Asset Detection Platform

Public GitHub repo - geoai-asset-detection-platform

Python GeoAI workflow platform for turning imagery into GIS-ready detections that can be exported, loaded, and reviewed on a map.

It works by taking imagery or COG input, preparing tiles or chips, running model inference through Python/GeoAI libraries, vectorizing results, and writing GeoPackage/PostGIS-ready outputs.

How it fits: This is the processing layer that creates spatial intelligence before the data gateway or Status Board publishes it for operational review.

GeoAI Python PostGIS GeoPackage COG PyTorch ONNX GeoPandas FastAPI

Spatial data ingestion and notification layer

Geospatial Data Gateway

Public GitHub repo - geospatial-data-gateway

.NET and Python gateway for registering datasets, tracking ingest jobs, loading accepted geospatial data, and notifying maps when layers change.

It works through ASP.NET Core APIs, Python file-processing workers, PostGIS-backed storage, and SignalR-style refresh events for browser clients.

How it fits: This is the handoff layer between validated files and the Status Board map, where accepted data becomes a tracked load and then a refreshable layer.

.NET ASP.NET Core SignalR Python PostGIS GeoJSON Shapefile GeoPackage API

Data readiness and handoff reporting

Geospatial ETL Validation Toolkit

Public GitHub repo - geospatial-etl-validation-toolkit

Python toolkit for checking GeoJSON, CSV, GeoPackage, Shapefile, and GeoTIFF inputs before PostGIS load or customer handoff.

It works by reading vector data with GeoPandas or Pyogrio, inspecting raster metadata for COG readiness, applying required-field/domain rules, and producing batch readiness reports.

How it fits: This is the data-quality gate that catches schema, geometry, CRS, domain, and raster issues before downstream systems depend on the data.

Python GeoPandas Pyogrio PostGIS GeoPackage Shapefile GeoTIFF COG readiness Data QA

Map-aware assistant tooling

Geospatial MCP Services

Public GitHub repo - geospatial-mcp-services

Docker-ready MCP servers that let an assistant ask controlled geospatial questions about selected map coordinates.

It works by exposing MCP stdio tools for GeoNames/Wikipedia lookup and incident analysis, while those tools can still call ordinary APIs internally.

How it fits: This is the assistant/tool layer that enriches map clicks or selected incidents without hiding where MCP ends and normal service calls begin.

MCP Docker GeoNames Wikipedia Incident analysis Map click Geospatial context LLM tools Stdio

Local MCP bridge and focused map demo

Map-to-AI Incident Analyst

Local checkout, no public remote yet - map-to-ai-incident-analyst

MapLibre incident review surface for northern New Mexico with risk scoring, MGRS tools, response-support lookup, and bridge routes for assistant analysis.

It works by scoring incidents with deterministic factors, showing why an incident is high risk, running OpenStreetMap-style support lookup, and packaging selected map context for analysis.

How it fits: This is the focused incident-analysis workflow that can be folded into the Status Board shared map and supported by the MCP services.

MapLibre MCP bridge Incident review MGRS OpenStreetMap Risk scoring Python Response support