Repast
Grocery list

A grocery list that does the arithmetic itself

Three of this week’s dinners want garlic. A recipe app gives you three lines. A grocery list gives you one row, the total, and a note saying which dinners it came from — and it gets there by conversion rules you could check by hand, not by asking a model to add fractions.

Produce and pantry · 14 of 23

Garlicin 3 of this week's dinners4 cloves
Yukon Gold PotatoesMonday and Thursday24 oz+8 oz
Ground BeefFriday20 oz
Green BeansMonday12 oz
Yellow Onionin 3 dinners3
Cavatappi PastaWednesday12 oz
Pork TenderloinThursday20 oz
Brioche BunsFriday4
Monterey JackFriday4 oz
Chicken SausageWednesday9 oz
Crushed TomatoesWednesday14 oz
AsparagusThursday6 oz
Dried FigsThursday1 oz
Fresh ThymeMondayamount to confirm

The unit table is the whole trick

Repast ships 33 units, and each one declares two things: which dimension it belongs to and what it converts to. Ounces, pounds, grams and milligrams are weight. Cups, tablespoons, teaspoons and milliliters are volume. Cloves, bunches, heads, slices, sprigs and stalks are counts. Adding within a dimension is arithmetic; adding across one is not, so the engine refuses.

Three units — bunch, pinch and thumb — are marked vague and carry no conversion factor at all, because none exists. A thumb of ginger is a real instruction to a cook and a meaningless one to a scale. Those 1,292 lines in the catalog stay as they were written; two thumbs of ginger appear as two thumbs of ginger, which is exactly what you will pick up.

Three rules the engine follows

One row per ingredient, with its provenance

Aggregation is per food, not per recipe line, so garlic used in Monday, Wednesday and Thursday is one row that says so. Tapping the row shows the contributing dishes, which is what lets you work out whether to drop the amount when you drop a dinner.

Never fabricate a purchase size

The list gives you the amount the week needs. It does not silently round four cloves up to a head or 10 ounces up to a pound, because the packaging on the shelf in front of you is local and the app is not there. What it will not do is show a rounded number and let you believe it came from the recipes.

A checkmark is a quantity, not a checkbox

This is the rule that makes mid-week re-planning survivable. Ticks are stored as amounts already acquired, so tapping Update grocery after a swap recalculates the list without clearing your progress. The alternative — treating a checkmark as done — means every plan change costs the shopper their place.

The list is finished when it says it is. The planner picks serving sizes whose quantities add up to a complete shop, so the list you take to the store is one you can work straight down. Anything that genuinely needs your judgment is marked, rather than filled in with a number nobody computed.

Built for the trip, not for the fridge

Build the list from your plan before heading out. It is organized for one shop, saved on your phone, and works in a grocery store with no signal. Quantities follow the serving sizes described in how household size is handled. Build the list on an iPad and the list is already on the iPhone in your pocket, because both sync through your own iCloud — whoever gets to the store is holding the current list.

The numbers behind the list

Measured across every ingredient line in the shipped catalog.

259,064ingredient lines the engine can be asked to total
78%carry an exact amount and a convertible unit
1,366distinct foods, which is what makes one row per ingredient possible
33units, each with a declared dimension and conversion base

Grocery list questions

Can I do one grocery trip a week with a meal planning app?

Yes. Tap Build grocery from your saved plan to get one list, aggregated across every dinner in it, so the trip is a single pass rather than three top-ups. The list is anchored to the day you told Repast you shop.

How does it turn recipes into a grocery list?

Every ingredient line in the week's chosen recipes is looked up against a catalog of 1,366 foods and totalled per food, using a unit table of 33 entries where each unit declares a dimension and a conversion factor. Lines in the same dimension are added — three teaspoons and a tablespoon become one volume — and lines in different dimensions are kept apart. The whole computation runs on the phone.

Does the AI work out the quantities?

No, and that separation is deliberate. The model chooses dishes; a deterministic engine on the device computes amounts. A language model asked to add up half a cup and three tablespoons will produce a confident number most of the time, and the times it does not are invisible. Arithmetic you can re-derive is worth more than arithmetic that is usually right.

What happens to my ticks when I change the plan?

Tap Update grocery after changing the plan; your ticks survive. Checking a row off records that you bought that amount, not that the row is finished. If a swap raises the amount needed, the updated row stays checked and grows a chip showing how much more; if it lowers it, nothing happens, because you already own it. You are never sent back for something you have.

Why does a row say amount to confirm?

Because the recipe did not give a usable amount. Across the 259,064 ingredient lines in the catalog, 78% carry an exact quantity, 35,710 say "to taste", and 20,790 give no amount at all. Rather than invent a plausible number for roughly one line in five, Repast shows the line and marks it for you to judge at the shelf.

Can I add my own items to the list?

Yes. Items you add sit alongside the computed rows and are never removed when you update the list, because Repast did not put them there and has no business taking them away. Deleting a row gives you ten seconds of undo, the same as any destructive action in the app.

Does the grocery list work without signal?

Yes, once you have built the list. Your saved plan, grocery list and downloaded recipes are available offline, so checking items off works in a store with no signal and in airplane mode. Nothing about the shop needs a connection.

One list. One trip.

A week of dinners aggregated into a single grocery list, with the quantities computed on your phone and your checkmarks surviving whatever you change afterwards.

No account to create. iOS 17 or later.