Skip to content

project-terraforma/TerraLogic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

8 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŒ TerraLogic

An agentic AI system that validates and corrects stale location data in the Overture Maps Places dataset


๐Ÿ“‹ Overview

Open map data is only as powerful as it is accurate but businesses close, move, and change faster than any dataset can keep up with. TerraLogic solves this.

TerraLogic is an agentic AI pipeline that autonomously pulls Places data from the Overture Maps Foundation dataset, cross references each location against live web sources, and flags or proposes corrections for stale, incorrect, or outdated entries surfacing everything in a clean human-review dashboard.

This directly addresses one of Overture's own stated challenges: "No one in mapping has fully solved the challenge of ensuring accurate, up-to-date data on places."


๐Ÿ‘ฅ Team Members

Name GitHub
Preetam Donepudi @pdonepud
Devesh @d-vesh
Ashmita @duashmita

๐ŸŒŸ Features

๐Ÿค– Agentic Validation Pipeline

  • Overture Places ingestion โ€” queries GeoParquet data via DuckDB or the Overture Python CLI for a target city/region
  • AI-powered cross-referencing โ€” an LLM agent checks each place against live web sources to detect closures, moved locations, wrong hours, or name changes
  • Confidence scoring โ€” each flagged entry receives a staleness score (0โ€“1) with source citations
  • Correction proposals โ€” the agent generates structured, Overture-compatible correction suggestions

๐Ÿ–ฅ๏ธ Human-Review Dashboard

  • Web interface for reviewing flagged locations on an interactive map
  • Approve / reject / skip correction proposals with one click
  • Filter by confidence score, category, or region
  • Export validated corrections in GeoJSON / GeoParquet format for potential upstream contribution to Overture

๐Ÿ“Š Analytics

  • Track validation coverage over time
  • Breakdown of error types (closed, moved, wrong name, wrong category)
  • Per-region accuracy heatmaps

๐Ÿ“ Project Structure

terra-pulse/
โ”œโ”€โ”€ README.md                    # This file
โ”œโ”€โ”€ requirements.txt             # Python dependencies
โ”‚
โ”œโ”€โ”€ pipeline/
โ”‚   โ”œโ”€โ”€ ingest.py                # Pull Places data from Overture via DuckDB
โ”‚   โ”œโ”€โ”€ agent.py                 # AI validation agent (LLM + web search)
โ”‚   โ”œโ”€โ”€ scorer.py                # Confidence scoring logic
โ”‚   โ””โ”€โ”€ exporter.py              # Output corrections in Overture-compatible format
โ”‚
โ”œโ”€โ”€ backend/
โ”‚   โ”œโ”€โ”€ api.py                   # FastAPI backend
โ”‚   โ”œโ”€โ”€ models.py                # Database models
โ”‚   โ””โ”€โ”€ requirements.txt         # Backend dependencies
โ”‚
โ”œโ”€โ”€ frontend/
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ App.jsx              # Main React app
โ”‚   โ”‚   โ”œโ”€โ”€ components/          # Dashboard UI components
โ”‚   โ”‚   โ””โ”€โ”€ pages/               # Map view, review queue, analytics
โ”‚   โ””โ”€โ”€ package.json
โ”‚
โ””โ”€โ”€ docs/
    โ”œโ”€โ”€ index.html               # GitHub Pages landing page
    โ””โ”€โ”€ ARCHITECTURE.md          # System architecture and data flow

๐Ÿš€ Quick Start

Prerequisites

  • Python 3.10+
  • Node.js 18+
  • DuckDB

1. Clone the repo

git clone https://github.com/project-terraforma/terra-pulse.git
cd terra-pulse

2. Install Python dependencies

pip install -r requirements.txt

3. Run the validation pipeline

# Download Places data for a bounding box (example: San Francisco)
python pipeline/ingest.py --bbox="-122.51,37.70,-122.36,37.81"

# Run the AI validation agent
python pipeline/agent.py --input data/places.geojson

# View results
python pipeline/exporter.py --output results/flagged_places.geojson

4. Start the dashboard

# Backend
cd backend
pip install -r requirements.txt
uvicorn api:app --reload

# Frontend (in a new terminal)
cd frontend
npm install
npm run dev

๐Ÿ› ๏ธ Tech Stack

Layer Tools
Map Data Overture Maps (GeoParquet, DuckDB, Python CLI)
AI Agent Claude API (reasoning + web search tool)
Backend Python / FastAPI
Frontend React + Leaflet / MapLibre GL
Database PostgreSQL + PostGIS
Deployment Vercel (frontend) ยท Railway (backend)

๐Ÿ—บ๏ธ How It Works

Overture Maps Places Data (GeoParquet)
            โ”‚
            โ–ผ
    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
    โ”‚  Ingest Module  โ”‚  โ† Query via DuckDB / overturemaps CLI
    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
    โ”‚   AI Agent      โ”‚  โ† LLM cross-references each place against live web sources
    โ”‚  (Claude API)   โ”‚     (business status, hours, address, name)
    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
    โ”‚ Confidence      โ”‚  โ† Scores each entry 0โ€“1 for staleness
    โ”‚ Scorer          โ”‚     with source citations
    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
    โ”‚ Review Dashboardโ”‚  โ† Human approves / rejects corrections
    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
    Overture-Compatible Correction Output (GeoJSON / GeoParquet)

๐Ÿ“ˆ Roadmap

Phase 1 โ€” Core Pipeline โœ… (In Progress)

  • Overture Places ingestion via DuckDB
  • AI agent with web search cross-referencing
  • Basic confidence scoring
  • GeoJSON export

Phase 2 โ€” Dashboard ๐Ÿšง

  • React frontend with map view
  • Review queue (approve / reject / skip)
  • FastAPI backend + PostgreSQL
  • Filter by region / confidence / category

Phase 3 โ€” Polish & Contribution ๐Ÿ”ฎ

  • Overture-compatible GeoParquet output
  • Analytics & heatmaps
  • GitHub Pages landing page
  • Performance benchmarking vs known ground truth

๐Ÿ“š Documentation

Document Description
ARCHITECTURE.md System architecture and data flow
CONTRIBUTING.md How to contribute

๐Ÿค Built For

This project was built for the Overture Maps Foundation as part of Project Terraforma, Spring 2026.

Overture Maps provides open, interoperable map data standardized across six themes โ€” Addresses, Buildings, Places, Divisions, Transportation, and Base โ€” and powers map products used by hundreds of millions of people worldwide.


๐Ÿ“„ License

This project is licensed under the Apache 2.0 License โ€” see LICENSE for details.


๐Ÿ™ Acknowledgments

  • Overture Maps Foundation for open, production-ready geospatial data
  • Project Terraforma for the course framework and community
  • Anthropic for the Claude API powering the validation agent

Last Updated: April 2026

About

An agentic AI pipeline that detects and corrects stale real-world location data by cross-referencing open map datasets with live web intelligence.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages