Skip to content
Sven Rosema edited this page Jun 1, 2026 · 5 revisions

Bring! shopping list

Two-way sync between Kinboard's shopping list and the Bring! mobile app, so the kitchen-wall list stays in sync with what someone updates from the supermarket.

Shopping list — Kinboard's built-in list, optionally Bring-synced

TODO: shot showing the Bring sync indicator badge in the page header

What it does

  • Logs into your Bring! account with email + password
  • Lists your Bring! lists; you pick the active one
  • Auto-syncs every 2 minutes (configurable)
  • Two-way: items added in Kinboard appear in Bring!, and vice versa
  • Optionally syncs Bring's category labels back into Kinboard

What it does not

  • Doesn't sync multiple Bring! lists at once — one active list per family
  • No real-time sync (poll-based)
  • Doesn't sync the recipe-list integration that Bring! has

Setup

1. Connect

  1. Open Settings → Bring!
  2. Click Sign in
  3. Enter your Bring! email + password
  4. Sign in

Credentials are stored encrypted in settings.value (bring_settings). Only the server side decrypts them when posting to the Bring! API.

Settings — Bring!: connection form and shared list selector

2. Pick the active list

After connect, the dropdown shows all your Bring! lists. Pick one — that becomes Kinboard's primary shopping list.

TODO: screenshot of /settings/bring with list selector

3. Tweak sync settings

Toggle What
Auto sync Poll Bring! every 2 minutes (default on)
Two-way sync Push Kinboard changes back to Bring! (default on; turn off for one-way "Kinboard mirrors Bring!" mode)
Sync categories Adopt Bring's category names instead of Kinboard's auto-detected ones (default on)

How merge conflicts resolve

The sync algorithm is "last write wins" per item:

  • An item exists in both → the one with the later modification timestamp wins
  • An item only on Bring! → added to Kinboard
  • An item only in Kinboard → pushed to Bring!
  • An item completed in one → marked completed in the other

In practice this just works for shopping lists — collisions are rare and benign.

Disconnecting

Settings → Bring! → Disconnect. Local shopping list stays; just stops syncing.

Troubleshooting

Symptom Likely cause
Login failed Bring! sometimes rate-limits credential checks; wait 5 min
Sync runs but new items don't appear The active list ID is stale (you deleted it in Bring!). Re-pick the list.
Categories show in German when I switched to English The category names from Bring! are German because that's what Bring! sent. Disable Sync categories to use Kinboard's localized auto-detection.
Kinboard's quantity (2 × Apples) shows as 2x Apples in Bring! Bring's freeform specification field doesn't have a separate quantity. Kinboard packs quantity + unit + name into the name on push.

Related

Clone this wiki locally