feature: Shopping tab — grocery list as first-class object #71

Closed
opened 2026-04-08 22:40:57 -07:00 by pyr0ball · 0 comments
Owner

Summary

Dedicated Shopping tab replacing the buried shopping mode toggle in Find.

Scope

  • Shopping mode toggle + max missing setting live here (removed from Find tab)
  • Grocery list persists across sessions
  • Items can be added manually or pulled from recipe results (missing ingredients)
  • Check-off items as you shop
  • Affiliate links for missing ingredients shown here (not inline on recipe cards)
  • Eventually: consolidate missing ingredients across multiple saved recipes into one list
  • Supersedes #68 (grocery list as first-class object)
  • Find tab restructure: once Shopping tab exists, Find tab collapses to level picker + dietary collapsible + suggest button

UX note

Shopping tab should feel like a separate mode/context, not a settings panel. The user is in a different headspace when shopping vs. when finding recipes.


Closing: Shipped in v0.5.0. ShoppingView.vue, ShoppingListPanel.vue, ShoppingItemRow.vue, and app/api/endpoints/shopping.py all present. Affiliate links wired via core.affiliates.

## Summary Dedicated Shopping tab replacing the buried shopping mode toggle in Find. ## Scope - Shopping mode toggle + max missing setting live here (removed from Find tab) - Grocery list persists across sessions - Items can be added manually or pulled from recipe results (missing ingredients) - Check-off items as you shop - Affiliate links for missing ingredients shown here (not inline on recipe cards) - Eventually: consolidate missing ingredients across multiple saved recipes into one list ## Related - Supersedes #68 (grocery list as first-class object) - Find tab restructure: once Shopping tab exists, Find tab collapses to level picker + dietary collapsible + suggest button ## UX note Shopping tab should feel like a separate mode/context, not a settings panel. The user is in a different headspace when shopping vs. when finding recipes. --- **Closing:** Shipped in v0.5.0. `ShoppingView.vue`, `ShoppingListPanel.vue`, `ShoppingItemRow.vue`, and `app/api/endpoints/shopping.py` all present. Affiliate links wired via `core.affiliates`.
pyr0ball added this to the Beta — Shopping & Affiliates milestone 2026-04-18 09:02:47 -07:00
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Circuit-Forge/kiwi#71
No description provided.