All projects

// case study

CooPilot

Coop sensors, farmer alerts and an egg forecast, from a Raspberry Pi to a farmer's phone.

Role

One of two developers on a team of 4: the web app and mobile app, plus shared work on the backend and the edge device

Timeline

Jan 2026 - present, thesis defense November 2026

Stack

Python · FastAPI · React · React Native · Supabase · PostgreSQL · Raspberry Pi · Claude Code

590 MB

TensorFlow removed from the API image

93

merged pull requests

680+

backend tests

The problem

Small free-range poultry farms run on what the farmer sees during the day. Heat, ammonia and poor ventilation build up unnoticed, especially at night, and egg production drops before anyone connects the cause. Our thesis set out to give a small cooperative's farmers live coop conditions, timely alerts and a forecast of their eggs.

What I built

A Raspberry Pi in the coop reads temperature, humidity, CO2, ammonia and light, buffers readings while the internet is down, and uploads them over HTTPS to a FastAPI backend on Supabase Postgres.

The backend turns readings into daily values on the farm's local day, raises warnings and critical alerts against limits each cooperative sets for itself, and pushes them to the farmer's phone. Cooperative admins and farmers use a role-based React web app; farmers log eggs in an Expo app that keeps working offline and syncs later.

The team's LSTM egg-production forecast runs in the backend. I moved its inference from TensorFlow to a small NumPy runtime, which dropped a 590 MB dependency from the API image and matches the Keras output to within 7e-8.

CooPilot landing page beside the mobile app showing tomorrow's egg forecast and live coop conditions
The CooPilot landing page, with the farmer's mobile app: tomorrow's egg forecast, coop conditions and what to fix first.

How it went

Tech notes

FastAPI and SQLAlchemy on Supabase Postgres with Alembic migrations; a FastAPI edge API on the Raspberry Pi with SCD41, MQ-137 and BH1750 sensors; a React + Vite web app; an Expo React Native app with push notifications. Built with Claude Code and the agent harness.

Have a similar project in mind?

Tell me what you're replacing or building, and I'll tell you what it would take.

Let's talk