← All projects

AI Engineering · Full-Stack · Geospatial

NAIMOS Intelligence

Decision-support prototype for monitoring and prioritizing suspected illegal-mining incidents in Ghana.

Status
Prototype
Year
2026
Role
Designer and developer
Client
Independent project

01

Overview

A role-based platform with a PostGIS-backed API, an explainable 0 to 100 risk engine, an interactive map, evidence management and an AI assistant restricted to allowlisted queries. All data in the demo is synthetic and labeled as such.

  • Python
  • FastAPI
  • PostgreSQL / PostGIS
  • SQLAlchemy
  • Alembic
  • Next.js
  • TypeScript
  • MapLibre
  • Docker
  • pytest

02

The challenge

Field teams need to decide where to investigate first across many reports, with evidence that holds up and AI output that is clearly separated from verified fact.

  • Making AI output trustworthy enough for evidence work
  • Modeling geospatial data and an immutable evidence trail

03

System requirements

  • Ranked AI risk map answering where to investigate first, with week-over-week change from real score history
  • Incident lifecycle with a full status audit trail
  • Hashed, versioned evidence uploads and an AI-assembled evidence summary
  • Voice-to-field-report flow with GPS, photo and video capture
  • Predictive hotspot view that is explainable, capped below certainty, and paired with a patrol recommendation
  • Seven communication formats built only from database records, separating verified facts from AI interpretation

04

Solution architecture

Responsibility

Next.js web app

Role-specific dashboards, map, incident and evidence screens, mobile-friendly field capture.

05

Implementation

  • Overview of the public NAIMOS Intelligence PRO demonstration, carrying its own banner: simulated demonstration, incident records and figures are fictional.
    Overview of the public NAIMOS Intelligence PRO demonstration, carrying its own banner: simulated demonstration, incident records and figures are fictional.

06

Technical decisions

  • Never let the model write free-form SQL; only allowlisted, parametrized queries against a read-only role
  • Label every AI output and keep verified facts separate from interpretation
  • Count detected objects as the maximum in any single file, never the sum, to avoid double-counting
  • Keep the risk score rule-based so every point is explainable

07

Results and validation

Content needed: measured results with period and method. Never estimated.

Evidence

  • Public repository with architecture, database, AI guardrail and security documents
  • 14 backend test files
  • Public simulated PRO demonstration

08

Lessons learned

Content needed: what you would do differently

Content checklist (remove once filled)

  • Screenshots of the map, risk leaderboard and evidence package from the full app (the public demo shows only the PRO overview)
  • Whether any organization has reviewed or adopted it. The repo calls it a prototype with simulated data, so keep that wording
  • The satellite change-detection step is simulated in the repo; say so wherever it is described

09

Related work

Project 2 of 12