# Nigeria Forest Monitor
Nigeria Forest Monitor is becoming a local-first production geospatial system
for recurring, human-reviewed monitoring of protected forest sites. The primary
MVP serves a government organisation operating private workspaces, departments,
teams, controlled verification workflows, and an auditable site history.
This is not a notebook dashboard or a system for declaring wrongdoing. Satellite
signals create reviewable observations and possible change events; authorised
people corroborate and classify them.
## Current architecture
```text
Next.js + MapLibre ──> FastAPI ──> PostgreSQL/PostGIS
│ │ ▲
└──> TiTiler └──> Airflow ─────┘
│ │
local COG rasters shared analysis package
```
All services run locally during the current phases. Vercel, Render, Supabase,
and cloud object storage are intentionally deferred until deployment needs and
measured usage justify them.
## Repository layout
```text
apps/web/ Next.js and MapLibre monitoring shell
apps/api/ versioned FastAPI service and health checks
apps/tiles/ restricted local COG tile service
apps/orchestrator/ Airflow DAGs and batch-orchestration image
packages/forest_monitor/ reusable geospatial and analytical Python package
configs/ analytical configuration
infra/postgres/init/ local product/Airflow database bootstrap
notebooks/forest_monitor.ipynb unified research and validation notebook
docs/ product, data, architecture, and operations docs
scripts/ bootstrap, run, and verification commands
```
## Start locally
Prerequisites: Python 3.11, Node.js 22+, Docker Desktop, and PowerShell.
```powershell
Copy-Item .env.example .env
powershell -ExecutionPolicy Bypass -File scripts\bootstrap.ps1
powershell -ExecutionPolicy Bypass -File scripts\dev.ps1
```
The stack exposes the web app on `
localhost …