Inspiration

We all experience food waste before, but never a simple and elegant solution to manage it. This problem is experienced universally and would have a huge collective impact.

The spark came from a single banana — left too long, past its best, binned. It made us ask: why do we have all this smart technology around us, yet our fridges are still a black box? We wanted to build something that made the invisible visible — a way to actually see what you have, what's running out, and what to do about it before it's too late.


What it does

Digital Fridge creates a digital twin of your fridge, pantry, and freezer. We control the full loop — input, management, and output.

Input — Scan your grocery receipt with your camera and Digital Fridge automatically populates your inventory with ingredients, quantities, and estimated expiry dates. You can also add items manually.

Management — Your digital fridge tracks everything in real time. Items are flagged as they approach expiry, expired items are surfaced clearly, and your inventory stays in sync as you cook and consume.

Output — When ingredients are nearing expiry, Digital Fridge proactively notifies you and generates personalised recipe options tailored to what you have, your dietary goals, and your cuisine preferences — powered by Google Gemini. Cook the recipe, mark it as done, and the used ingredients are automatically deducted from your inventory.

A built-in scoring system rewards you for using food before it expires and tracks your waste reduction over time — turning good kitchen habits into something you can actually see.


How we built it

Digital Fridge is a mobile-first Progressive Web App built by Team Comet over 48 hours.

The frontend is built in React, designed entirely for mobile with a gamified interface — including an animated fridge door entry, an interactive interior with section-based inventory views, and layered popup navigation. The backend runs on Python with Flask, handling inventory management, scoring logic, and all communication with the AI layer.

We integrated Google Gemini for three distinct AI tasks: parsing grocery receipts from photos, generating personalised recipe options from the user's live inventory, and resolving ingredient names to visual assets. All AI calls are made server-side, with structured JSON outputs parsed and validated before reaching the frontend.


Challenges we ran into

Receipt parsing was harder than expected — real grocery receipts are messy, with abbreviated names, PLU codes, and inconsistent formatting. Getting Gemini to reliably extract and normalise ingredient names required significant prompt engineering and a multi-stage fallback strategy.

Latency was another challenge. AI calls take time, and a sluggish experience kills the feel of the app. We solved this by pre-fetching data during animations, batching AI calls where possible, and using push notifications to reframe generation wait times as a feature rather than a flaw.

Keeping the digital twin accurate over time — as items are partially used, moved between sections, or expire — required careful thought around state management on both the frontend and backend.


Accomplishments that we're proud of

We're proud of the end-to-end coherence of the product — from the moment the fridge door swings open to the score ticking up after a meal is cooked, every interaction feels intentional. It doesn't feel like a hackathon project, it feels like something you'd actually use.

We're also proud of the receipt scanner. Taking a photo of a crumpled grocery receipt and watching your fridge populate in seconds is a genuinely satisfying moment — and it's the feature that makes the app practical in real life rather than just interesting in a demo.


What we learned

We learned how much prompt engineering matters. The difference between a Gemini response that works and one that breaks your JSON parser is often a single line of instruction. Structured output discipline — being explicit about format, edge cases, and fallback behaviour — is as important as the prompt content itself.

We also learned to design for the demo moment early. Knowing what the 3-minute video needed to show shaped our prioritisation throughout the build, and kept us from going deep on features that wouldn't land in the time we had.


What's next for Comet

Digital Fridge is solving a real problem at a household level, but the opportunity scales further. Next steps include:

  • Barcode scanning — photograph individual products for faster, more precise inventory entry
  • Shared households — multiple users managing the same fridge, with activity visible to everyone
  • Shopping list generation — Digital Fridge learns what you regularly run out of and builds your next grocery list automatically
  • Waste analytics — longer-term trends showing which food categories you waste most, with personalised suggestions to improve
  • Supermarket integration — connect directly to loyalty card data to auto-import purchases without needing a receipt photo

The goal is to make Digital Fridge the operating system for your kitchen — not just a tool you open occasionally, but something running quietly in the background, making sure nothing goes to waste.


Built With

Share this project:

Updates