The grocery list
How the grocery typeahead works — including Recently added, the household-wide history that surfaces items you've typed before so you don't have to retype them every shop.
The Groceries tab holds your active shopping list — recipe ingredients aggregated by aisle, plus anything you've added by hand. Tap + at the top to open the add picker.
Adding items
Type into the search field. Three things can happen:
- Dictionary match — we've heard of this ingredient. Tap it and it's added.
- Recently added — your household has typed this before. See the next section.
- Custom add — your text doesn't match anything we know; the Add "…" row at the top lets you save it verbatim, exactly as you typed it.
Each tap commits the item to the list immediately and shows a checkmark — keep tapping to add more, then close the sheet when you're done. There's no Apply button, no batching; the list is the source of truth.
Recently added
The grocery dictionary covers thousands of ingredients, but it doesn't know about *your* household — silverbeet from the local greengrocer, your kid's favourite cereal, that one specific brand of miso paste your aunt sent you. Recently added fixes that.
Whenever anyone in your household adds a custom item to the grocery list, it joins a per-household history. Next time someone starts typing, that history surfaces in a Recently added section above the dictionary results — ranked by recency first, frequency second. One tap to re-add it, spelled exactly the way it was last time.
- Per-household, not per-device. A new phone joining the household inherits the full list automatically — same as the rest of the grocery state.
- Survives "Clear list." Clearing the active grocery list doesn't wipe history. Items you've typed once stay discoverable.
- Casing is preserved. If you typed *Silverbeet*, that's how it appears next time — even if someone else in the household later typed *silverbeet*, the most-recent casing wins.
- No timeout. A two-year-old item is still there if you need it; it just naturally sinks below recently-used items.
Recently added matches by substring on the normalized name — typing mis finds miso paste even if the dictionary doesn't list it. Items that *do* match the dictionary are deduped to the dictionary row instead, so you don't see the same item twice.
Privacy
Recently added items can be sensitive — medications, allergens, anything else you'd type into a list. The list is per-household: it doesn't sync to other households, doesn't appear on share-link pages, and doesn't leave the household DB.
Related guides
On the Recipes tab, tap the Ingredients filter chip to narrow your library to recipes you can cook with what you've got. Type, autocomplete, or scan with the camera — every input modality feeds the same chip set.
How recipes.im households work — invite codes, shared libraries, and the per-household units-and-conversion settings that drive scaling and grocery aggregation.