Regenerative Agriculture | Sheep Genetics | Smart Farm Automation
Open source tools for farmers who code and coders who farm
Epic Pastures is a regenerative farm in Virginia's Piedmont region, raising Katahdin hair sheep and pasture-raised poultry using holistic management principles. We believe that better technology enables better land stewardship.
This GitHub organization is where we publish the software we've written to run our farm. If it's useful to us, maybe it's useful to you too.
|
|
We use NSIP (National Sheep Improvement Program) to make breeding decisions based on actual performance data:
- EBV (Estimated Breeding Value) analysis and visualization
- Breeding decision support systems
- Flock performance tracking and genetics reporting
- Integration with NSIP databases and lamb plans
Home Assistant and ESPHome based systems for farm monitoring and control:
- Water tank levels and automatic refill systems
- Barn environment monitoring (temperature, humidity, ammonia)
- Electric fence monitoring and alerts
- Automated lighting schedules for poultry
- Weather station integration for grazing decisions
When to move sheep? How warm should the greenhouse be? We model it:
- Greenhouse climate control simulations
- Pasture growth and recovery modeling
- Stocking density optimization
- Forage quality prediction
Farm work is physical. We're building things to help with that:
- Automated feeders and waterers
- Pasture monitoring rovers
- Computer vision for livestock health assessment
- GPS-guided equipment control
┌─────────────────────────────────────────────────────────────────────────────┐
│ FARM AUTOMATION │
├─────────────────────────────────────────────────────────────────────────────┤
│ Home Assistant │ ESPHome │ MQTT │ InfluxDB │ Grafana │
├─────────────────────────────────────────────────────────────────────────────┤
│ DEVELOPMENT │
├─────────────────────────────────────────────────────────────────────────────┤
│ Python │ TypeScript │ Go │ Rust │ C++ (embedded) │
├─────────────────────────────────────────────────────────────────────────────┤
│ AI & DATA │
├─────────────────────────────────────────────────────────────────────────────┤
│ Claude Code │ GitHub Copilot │ Pandas │ scikit-learn │ NSIP API │
├─────────────────────────────────────────────────────────────────────────────┤
│ INFRASTRUCTURE │
├─────────────────────────────────────────────────────────────────────────────┤
│ GitHub Actions │ Docker │ Raspberry Pi │ ESP32 │ LoRa │
└─────────────────────────────────────────────────────────────────────────────┘
Standardized CI/CD for agricultural software projects:
# Example: Python project with farm-specific tooling
jobs:
ci:
uses: epicpast/.github/.github/workflows/reusable-ci-python.yml@main
with:
python-version: '3.12'
coverage-threshold: 80| Workflow | Description |
|---|---|
reusable-ci-python.yml |
Python with uv, ruff, pyright, pytest |
reusable-ci-typescript.yml |
TypeScript with pnpm, ESLint, Vitest |
reusable-ci-go.yml |
Go with golangci-lint |
reusable-security.yml |
Secret and dependency scanning |
reusable-homebrew-formula.yml |
CLI tool distribution via Homebrew |
Farm first. If the sheep need moving, the code can wait. Software serves the land, not the other way around.
Share what works. We're not a software company. If something we built helps another farm, great. That's why it's here.
Good enough ships. A script that works today beats perfect code next lambing season. We fix things as we go.
Keep it simple. The person maintaining this code is probably future-me, tired, at 6am, wondering why the waterer alert didn't fire.
| Farm Website | epicpastures.com |
| @epicpastures | |
| GitHub Issues | Project-specific discussions |
| Pull Requests | The best way to contribute |
"Better eggs come from happy hens. Better farms come from less time fighting software."
Farmville, Virginia | epicpastures.com | View Ecosystem