Harvest
Hackathon
A grocery-app-style platform that unifies Southeast Michigan's food pantries into one real-time, dignity-first shopping experience — built with four teammates in a single day.

The Prompt
I built Harvest over one day with four teammates — Serena Flaxenburg, Natalie Mark, Chloe Tjakra, and Ashley Yeung — for the Google × CSG × T4SG Hackathon for Social Good, a competition focused on Digital Public Infrastructure: the open data platforms, public APIs, civic dashboards, and benefit-distribution tools that make public services more efficient and accessible. Teams picked from five urban problem tracks. We built at the intersection of Government Services & Access and Resource Allocation & Sustainability, with one constraint shaping everything: ship a working, demoable MVP by the end of the day.
The Problem
Washtenaw County's food insecurity rate has climbed to 14%, touching roughly 51,000 residents. That's not because the food isn't there — local food banks distribute over 107 million pounds of it annually through 700-plus partner agencies. Nationally, the EPA estimates food banks discard more than a billion pounds of food a year to spoilage, even as demand outpaces what reaches people. The gap sits in coordination, not supply. Most pantries run on brutally narrow hours, some as little as sixty minutes a week. Fewer than half of food-insecure residents qualify for SNAP. And transportation insecurity now affects more Americans, 19%, than food insecurity itself, which means even a well-stocked pantry two miles away might as well not exist for someone without a car.
We treated this as a coordination failure rather than a supply shortage. The food and the need both exist. What's missing is the layer that connects them in real time.
The Pitch
Harvest reframes food assistance as an ordinary consumer errand instead of a charity transaction. Rather than asking someone to memorize which pantry is open when, and hope the thing they need hasn't already been claimed, Harvest shows food access the way a grocery delivery app shows groceries: browse, add to cart, pick up or get it delivered.
Critically, the product sits on top of infrastructure that already exists rather than replacing it. Pantries keep using their own inventory tools — Link2Feed, ConnectFood, whatever they've already got — and Harvest acts as the aggregation layer that pulls that data together and makes it visible to the people who need it.

Designing the Shopping Experience
The consumer side had to feel indistinguishable from any mainstream delivery app, because that familiarity is the whole point. Users browse real-time inventory from nearby pantries organized into the categories you'd expect — produce, dairy, bread & grains, protein, canned goods, frozen, snacks, beverages — with dietary filters for gluten-free, dairy-free, nut-free, egg-free, fish-free, and vegan.
On top of that, an AI recipe feature reads whatever's actually in stock nearby and suggests nutrient-dense, healthy meals built from it, so people can plan around what's available instead of guessing or making a wasted trip.

Requesting items works through a standard cart flow, with a choice between pickup or delivery at checkout. We were deliberate about what the interface never shows: no countdown timers, no "expiring soon" badges, no scarcity language anywhere in the consumer-facing UI. That was non-negotiable for us as a team. Urgency logic runs entirely in the backend — accessing food assistance should never feel different from any other errand.

Each item's detail page pulls real nutrition and ingredient data, sourced automatically through the barcode pipeline on the pantry side, so a user browsing a can of tuna or a case of energy drinks sees the same nutrition facts and ingredient list they'd get scanning it themselves at a store. Transparency here mattered as much as speed.

We built dedicated accessibility controls rather than assuming default styling would work for everyone: large text, high contrast, reduced motion for vestibular disorders, and enhanced focus indicators for keyboard navigation, all saved automatically and layered on top of whatever system-level settings a person already has enabled.

Building the Pantry Side
Behind the consumer app, Harvest is built as a data aggregation layer that pulls from the tools pantries already run: inventory platforms like Link2Feed and ConnectFood, volunteer coordination through Food Rescue Hero, logistics and routing through BringFood. Consolidating those into one operational picture is what lets a pantry get smarter about what its community actually needs, instead of just reacting to whatever's in front of them.
None of the consumer experience works without pantry staff actually logging what they have, so the staff dashboard had to be fast enough to survive real operating conditions. The overview screen gives staff total inventory count, pending orders awaiting confirmation, and anything expiring within 48 hours, all in one glance.

The inventory table underneath lets staff track item, category, quantity, and expiration date, with quick edit and delete actions per row.

The feature I'm proudest of is the barcode scanner. Staff point a camera at a product barcode, and the system pulls product images and nutrition data automatically from the OpenFoodFacts API — what used to be manual data entry collapses into a few seconds. It's a small piece of the build, but it's the difference between a tool pantry staff will actually use under time pressure and one they'll quietly abandon after week one.

On the order side, staff see incoming requests with the items involved and can mark them ready for pickup with one tap. Behind the scenes, expiration-aware logic quietly prioritizes soon-to-expire items in both the consumer shopping feed and the recipe suggestions, and widens the delivery radius automatically if something isn't claimed in time — all invisible to the person browsing.

Delivery as a Modular Layer
We didn't try to build a driver network in a day, and honestly we wouldn't want to even with more time. Harvest is architected to plug into delivery infrastructure that already has a track record, like DoorDash's Project DASH, which has run a validated food-pantry delivery pilot with Food Gatherers right here in Ann Arbor. For pantries running their own volunteer programs, the same modular approach lets Harvest hand off to tools like BringFood or Food Rescue Hero instead of competing with them.
How It Came Together
The frontend is Next.js on Vercel. Inventory enrichment runs through the OpenFoodFacts API for barcode-based product lookup. Recipe suggestions come from an LLM reading live inventory data. All of it, front to back, shipped within the single-day hackathon window.
