An open-source intelligence and orchestration layer for adaptive grazing. This system translates satellite-derived land signals into clear daily grazing decisions.
Grass is dynamic. Fences are static. Modern sensing allows us to understand land conditions daily - what's been missing is software that turns those signals into actionable guidance.
This project provides the decision-making brain that tells farmers:
"Here is the current state of your land, and here is the best grazing action for today."
The core experience is a daily ritual:
- Open the app each morning
- Receive a status report on your farm's pasture conditions
- Review the recommended grazing plan for today
- Approve or adjust using natural language feedback
- Get execution instructions ready for your virtual fencing system or manual workflow
This is decision support - you stay in control.
- Define farm boundaries and pasture zones
- Track herd metadata (species, count)
- Visualize all zones on an interactive map
- Vegetation health metrics (NDVI, EVI)
- Relative forage availability by pasture
- Regrowth trends over time
- Over/under-utilization indicators
- Which pasture to graze today
- Suggested area and duration
- Confidence score and assumptions
- Plain-language explanations
- Visual fence geometry for planning
- Copy-ready instructions for third-party virtual fencing tools
- Manual execution guidance
We use publicly available satellite imagery (primarily Sentinel-2) to compute vegetation indices across your farm. This provides:
- Scalable, low-cost land sensing
- Multispectral data for vegetation analysis
- Frequent revisits (daily to every few days)
- Historical archive for trend analysis
Satellite cadence aligns with biological reality - grazing decisions are daily or multi-day decisions, not minute-by-minute.
| Index | Purpose |
|---|---|
| NDVI | Primary vegetation health indicator |
| EVI | Enhanced sensitivity for dense pastures |
| NDWI | Water stress and drought detection |
- Query satellite imagery for your farm's area
- Apply cloud masking to remove unusable pixels
- Compute vegetation indices
- Aggregate time-series data (rolling means/medians)
- Calculate zonal statistics per pasture
- Score pasture readiness using transparent rules
- Generate recommendation with confidence level
To maintain focus, this demo does not include:
- Real-time livestock tracking
- Custom hardware or collars
- Automated fence actuation
- Drone-based sensing
These are future integration points, not current scope.
The web app lives in app/. Prerequisites: Node.js 18+ and npm.
cd app
npm install
npm run devCommon scripts:
npm run dev- start the Vite dev servernpm run build- type-check and build for productionnpm run lint- run ESLintnpm run preview- preview the production build
The following environment variables are required for full functionality:
-
BRAINTRUST_API_KEY- API key for Braintrust observability platform. Required for agent behavior tracking and debugging. Get your API key from Braintrust. Set this in your Convex dashboard environment variables for production, or in.env.localfor local development.Without this key, agent logging will be disabled but the application will continue to function.
- Satellite Access: pystac-client, odc-stac
- Raster Processing: rasterio, xarray, numpy
- Tile Services: rio-tiler, TiTiler
- Geometry: GeoJSON, PostGIS (optional)
- Data Source: Microsoft Planetary Computer (Sentinel-2)
/
├── agents.md # AI agent reference
├── README.md # This file
├── app/ # Web application (Vite + React)
│ ├── public/
│ ├── src/
│ └── ...
├── docs/
│ ├── architecture.md # Technical architecture details
│ ├── domain.md # Remote sensing domain knowledge
│ └── phasing.md # Development phases
└── ...
- Development Phasing - How we build this incrementally
- Technical Architecture - System design and data flow
- Domain Knowledge - Remote sensing and vegetation science primer
See CONTRIBUTING.md for setup and contribution guidelines.
If you discover a vulnerability, see SECURITY.md.
Licensed under the Apache License, Version 2.0. See LICENSE and NOTICE.
OpenPasture - Building the intelligence layer for regenerative grazing.