Inspiration

Community food pantries must prepare for changing demand while working with limited supplies. A recent average can miss a rising trend, while a forecast without an explanation is difficult to trust. PantryPulse turns a small weekly CSV into a practical, inspectable replenishment plan.

What it does

PantryPulse forecasts four weeks of demand, visualizes a planning band, and calculates additional packs needed from current stock and confirmed weekly deliveries. A coordinator can test increased demand or skipped deliveries and see which items face a shortfall first. Every recommendation has a week-by-week calculation, and the exported plan preserves its source and scenario assumptions.

How we built it

Machine learning is central to the project. An original ridge-regression implementation learns trend, seasonal, and recent-demand signals. It competes with two simple baselines on chronological validation data, and the selected model is evaluated on later weeks using only information available at each forecast origin.

The application uses Python's standard library with plain JavaScript, HTML, CSS, and SVG. It runs without package installation, external models, API keys, or an internet connection.

Challenges we ran into

One major challenge was keeping the system lightweight while still making the forecasting process useful and inspectable. We also had to avoid misleading evaluation: chronological validation matters much more than a flattering random train/test split, and one-week accuracy cannot fully represent a four-week planning problem.

Accomplishments that we're proud of

PantryPulse includes working forecasting, scenario analysis, CSV import, inventory planning, and plan export. It has 33 automated checks, including clean-source startup without third-party packages.

On the included synthetic dataset, mean one-week forecast error is 3.25 packs, 44.2% lower than a four-week-average baseline. These are reproducible demonstration results, not claims of real-world field performance.

What we learned

We learned that transparent baselines, temporal isolation, and clear limitations are essential when ML influences operational decisions. A useful forecast should be inspectable instead of acting like a black box.

What's next for PantryPulse

The next step is validating PantryPulse with a consenting food pantry using aggregate operational data, then adding delivery lead times, expiry dates, and storage constraints.

Built With

Share this project:

Updates

Submission history