Real satellite NDVI vegetation-health monitoring over Zambia farmland, built on Navara
# Zambia Farm Health Explorer (DE Africa)
Real satellite vegetation-health monitoring over farmland east of Lusaka, Zambia, powered by Navara 3D globe engine and Digital Earth Africa NDVI data.
## Quick Start
```bash
pnpm install
pnpm run dev
```
Opens at `
localhost`.
## Screenshots
| Intro & Overview | Field Inspector |
|:---:|:---:|
| | |
## Features
- **Real NDVI Data** — Digital Earth Africa's 30m-resolution vegetation index, bulk-downloaded via WCS for August of every year, 2019-2025
- **Year Picker** — Dropdown to instantly swap which year's NDVI overlay is displayed
- **Field Inspector** — Hold Shift and drag a box over any patch of land to read real mean/min/max NDVI for that exact area, computed instantly from a precomputed local grid (no network round trip)
- **Country + Province Boundaries** — Real Zambia national and provincial outlines for geographic context
- **Intro Modal** — Explains the project and the Digital Earth Africa / Rinato Space article that inspired it
- **Fly-to-Farmland** — One-click camera reset back to the farmland view after panning/zooming away
- **Real Terrain + Imagery** — Re:Earth quantized-mesh terrain draped with EOX Sentinel-2 cloudless imagery
## Tech Stack
| Layer | Technology |
|-------|------------|
| 3D Engine | Navara (`@navaramap/three`) |
| Rendering | Three.js |
| Terrain | Re:Earth quantized-mesh (`terrain.reearth.land`) |
| Imagery | EOX Sentinel-2 cloudless WMTS |
| Vegetation Data | Digital Earth Africa `ndvi_anomaly` WCS (`ows.digitalearth.africa`) |
| Boundaries | geoBoundaries.org (Zambia ADM0/ADM1) |
| Build | Vite + TypeScript |
## Project Structure
```
src/
└── main.ts # Entry point — scene setup, layers, camera, and all UI wiring
public/
├── tiles/ /{z}/{x}/{y}.png # Pre-tiled NDVI rasters, one folder per year (2019-2025)
├── data/
│ ├── ndvi-grid- .bin # Precomputed NDVI value grid per year, used by the field inspector
│ ├── zambia-adm0.geojson …