Help & Reference

Shopping without a signal

Groceries works offline. Check items off, skip them this trip, and add items even without a signal — each change is saved on this device the moment you tap it, and goes up when Mirepoix can be reached again.

What you can do offline

Each of those is saved on this device as you tap it, so it survives closing the tab and walking out of the store. When Mirepoix can be reached again, your changes go up in the order you made them, and whenever the receipt opens it names each change the way you made it — Pinned Roast chicken.

Changes that are still waiting don’t need the connection to drop and come back before they go up. With a signal, they’re sent as soon as you open any page in your kitchen or come back to Mirepoix from another app. A change the server was briefly too busy for is tried again on its own shortly after, without waiting for you to tap Retry.

Everything else that changes what your kitchen shares waits for a signal, and each control says so when you tap it, in its own words: tap Edit on a recipe without one and you get Needs a signal to edit this recipe. Editing a recipe or reading its history, changing the Menu, updating the Pantry, moving a grocery item to another aisle or setting where you shop for it, telling Mirepoix where an aisle is at a store, finishing a trip with Done shopping, and asking Mirabel all work that way. Nothing changes until you’re back.

You can also reload the page while offline — provided you’ve opened Groceries once with signal. The app remembers the last version it saw.

The status line

A line at the bottom of the screen shows where you stand. It’s on every page, not just Groceries:

When you’re reading a saved copy of a page and have changes waiting, the saved-copy line sits underneath.

The sync receipt

When your changes go up, a panel headed What synced lists what landed and what didn’t:

What synced

Checked off milk

Skipped yogurt — already removed

Checked off eggs — it changed after you did, so this wasn’t applied [Discard]

Added tahini — couldn’t sync [Retry] [Discard]

[Looks good]

The receipt opens on its own when something needs your attention — a change that didn’t land, a change waiting on a sign-in, or a queue more than an hour old, even when all of it synced. It opens once for each such change, on whichever page or tab you’re using: a change it has already shown you doesn’t open it again as you move around, and Some changes need a look on the status line stays there to reopen it. Otherwise it stays out of the way: while changes are still waiting, tap the status line to see them; once everything’s synced cleanly, the line just reads ✓ Synced. for a moment and clears, with nothing left to tap.

Each row says what happened in the same words as the change you made. An item a partner already took off the list reads already removed rather than reappearing on your list. A change saved more than a week ago reads saved too long ago to sync.

If a grocery item changes after you did — someone else changed it, or you did on another device — that later change stands and your waiting one isn’t applied. That covers checking it off or back on, adding it again, or putting it back on the list from the Pantry. The row reads it changed after you did, so this wasn’t applied, with only Discard to offer. What counts is when each change was made, not when it went up: a change you made after the other one still goes through, even if it reaches Mirepoix later. The exception is an item that has left the list since: a waiting check, uncheck or skip for it reads already removed, whenever you made it. A waiting add is judged like the rest, so if the item was taken off the list after you added it, that removal stands.

For a row that didn’t land:

Changes that aren’t yours are never sent under your name. If someone else’s queued changes are still on this device, they show as — not from this sign-in and offer only Discard. Changes you queued in an older version of Mirepoix carry no sign-in of their own, so they read the same way: they’re kept, shown, and discarded by you rather than sent.

Tap Looks good when you’re done. The page refreshes to pull the latest list, including anything a partner changed on another device while you were offline.

Signing out clears what’s on this device, so Mirepoix asks first when that would throw work away: 2 changes saved on this device haven’t synced yet. Signing out will discard them. Cancel, get a signal, and let them sync before you sign out.

Someone else signing in on this device clears the saved pages too, even when nobody signed out first — a sign-in that simply timed out, or one you closed the browser on. The saved recipes belong to whoever is signed in, so they go when somebody else arrives, and the collection saves itself again for the new sign-in once there’s a signal. Queued changes are handled differently: they’re kept and shown to you rather than cleared, marked — not from this sign-in with only Discard offered, as above.

Read recipes offline too

Every recipe in your kitchen is saved on this device. Nobody chooses which — there’s no list to pin or tick, and no set to manage. Open Mirepoix with a signal once and it starts putting the whole collection away for reading later. On iPhone and iPad, and on a Mac when Mirepoix is added to the Dock from Safari, the installed app and Safari each keep their own set, so a newly installed app starts empty and saves the collection again with a signal.

The pages you visit are saved as you go, too. Your recipe list, the Menu, Groceries, and the Pantry are refreshed first each time, along with the page you’re on.

Saving runs quietly in the background, a page at a time, and yields to whatever you’re doing: it pauses while Mirepoix isn’t the app on screen — another app in front of it, or the screen off — while a page is loading, while an edit is being saved, while grocery changes are still waiting to go up, and on a very slow connection. It picks up where it left off, so opening Mirepoix again after a while is what gets the rest of the collection put away.

Saved copies keep themselves current:

Open a saved page later without a signal and Mirepoix shows the copy it saved, with a line at the bottom of the screen that says how old the copy is: Showing a saved copy from 12 min ago. The page refreshes itself as soon as Mirepoix can be reached again, and the line goes away.

A page you were reading live does the same, without ever having shown that line. It was never a saved copy — it just held what it had while a partner changed something — and it refreshes itself once Mirepoix can be reached again. It waits until Mirepoix is the app on screen, and until any changes of yours that were waiting to go up have gone. The recipe editor never refreshes this way, so nothing you’re partway through typing is lost. On other pages, a text box you’re typing in keeps your words while the page updates around it, whether the update is this refresh, your own last add to Groceries, or a change from someone in your kitchen. Once you leave the box, later updates reach it as usual.

Some pages are never saved: the recipe editor, recipe version history, Settings, billing, and export. Anything outside a kitchen is never saved either. Tap a link to a page in your kitchen that isn’t saved on this device yet, without a signal, and a line says That page isn’t saved on this device. A never-saved page gets Couldn’t open that page right now instead, and so does any tap that simply didn’t get an answer, since Mirepoix can’t tell whether that page is saved. Either way you stay on the page you were reading. The line stays until you open another page or Mirepoix can be reached again.

Search still finds every recipe. Open it without a signal and you can type against your whole collection — the list of recipes travels with the page you’re reading. A recipe whose page isn’t saved on this device yet is marked not saved in the results, so you know before you tap it.

Photos aren’t saved on this device. Open a recipe without a signal and its photo is replaced by a note reading This photo isn’t saved on this device. The recipe itself is all there — ingredients, steps, and notes. Any other time a photo can’t be loaded, the note says Couldn’t load this photo instead.

If you open the app for the first time without a signal

Nothing is saved yet — not even the page that would say so — so opening a brand-new install with no signal shows your browser’s own “can’t connect” message, not a Mirepoix page. There’s nothing Mirepoix can do until it has been opened once with a signal.

So open Mirepoix with a signal that first time, and it starts saving for next time: the page you’re on and your recipe list, Menu, Groceries, and Pantry go first, then the rest of your recipes, a page at a time. Reading those saved pages later without a signal is covered above.

See also

Last updated October 13, 2026