Skip to content

Handle Multi-Ingredient Products

As a Host, I want to map products that contain multiple ingredients (like pre-made sour mix), So that the system accurately tracks what’s in my inventory.

  • Given I have a product like “Margarita Mix” that contains lime juice and simple syrup
  • When I map this product to ingredients
  • Then I can associate it with multiple generic ingredients:
    • Lime Juice (primary)
    • Simple Syrup (secondary)
  • And I can specify the ratio or percentage of each ingredient
  • And when calculating shopping lists, the system accounts for multi-ingredient products
  • And I can mark certain products as “preferred” or “avoid” for specific ingredients

✅ PARTIALLY IMPLEMENTED (December 2025)

Current Implementation:

  • Products can be mapped to multiple ingredients via ingredientIds array
  • Multiple ingredients per product is supported

Missing Features:

  • Ratio/percentage specification for each ingredient
  • Primary/secondary ingredient designation
  • Shopping list calculation for multi-ingredient products
  • Preferred/avoid preferences for ingredients

Files:

  • shaker/types/product.ts - Product type with ingredientIds: string[]
  • shaker/app/(tabs)/inventory/products/edit-product.tsx - Multi-ingredient selection

Note: Basic multi-ingredient mapping exists, but advanced features (ratios, preferences) are not yet implemented.

Low - Handles edge cases

  • Product, Ingredient, RecipeIngredient