← Back to projects

Case study

Home Supply Predictor

A private PWA that tells you what’s about to run out around the house — before it does — from low-effort, natural-language logging. No forms. No stock counts. You just talk to it.

Your supplies

1 to keep an eye on

Ask a question

Keep an eye on

toilet wipes 0 count you marked low

Tracking

almond milk1 count  ~4 days
chia seeds1 count  ~this week
gluten free oatmeal907 g  ~this week
paper towel4 count  ~9 days
a&d cream1 count  ~next week
milk2.5 gal  ~11 days

The problem

Every “home inventory” app dies the same way: they make you do data entry. Barcode scans, quantity fields, stock counts — chores nobody keeps up. So the data goes stale and the app becomes useless.

The insight that reframes it: you don’t need to know how much you have — you need to know when you’ll run out. That’s a prediction problem, not a bookkeeping one.

The core design decision

It’s a ledger with math on top, not an inventory app. You never count stock. You log events in plain language — “bought coffee,” “ran out of TP,” “used half a gallon of milk” — and the app infers consumption rates and predicts run-out dates.

This one decision drives everything: the entire UI is a single natural-language text box. No forms, no dropdowns, no edit screens. An LLM parses what you type into structured events; a confirmation chip shows what it understood, with one-tap undo.

The clever part: a signal hierarchy that degrades gracefully

The app never requires effort. It works off whatever signal you give it, and gets sharper as you give more — automatically picking the best available signal per item:

EffortSignalWhat it does
LowestPurchase cadenceGuesses from the gaps between buys. Useful on day one.
LowDepletion markers“ran out” / “almost out” — ground-truth pack lifespan, far cleaner than guessing.
OptionalQuantity balanceLog amounts and it tracks on-hand and predicts balance ÷ your usage rate.

Crucially, quantity tracking is an optional overlay, per item — lazy items still work, precise items get precise. This solved the classic “backup blind spot”: because a prediction divides total stock by your consumption rate, having spares automatically pushes the run-out date out — no false “you’re low!” nag while three packs sit in the closet.

AI-native architecture (not AI-bolted-on)

The interesting engineering is in how the LLM is used — sparingly and structurally, not as a magic black box:

Engineering notes

How it was built

The whole thing was designed and built through conversational iteration with an AI coding agent (Claude Code) — starting from a written product spec and evolving through real daily use. That process is itself the interesting part:

It’s a working demonstration of building a real, shipped product with AI as the development environment — and of using AI deliberately inside the product, only where it earns its place.

What’s next

Retailer integration for one-tap re-ordering — the count model was built specifically to make that safe (you don’t auto-buy when you have spares), which is why quantity tracking exists at all.

It’s a private app, but I’m happy to give a live walkthrough.

Request a walkthrough