Skip to content

Add a Bottle to Inventory

As a Host, I want to add a new bottle or product to my inventory, so that the system can accurately track what ingredients I have available for my recipes.

  • I can add a new product to my inventory.
  • I must provide the product’s Name (e.g., “Smith & Cross”).
  • I can optionally provide the following details:
    • Brand (e.g., “Smith & Cross”)
    • Type (e.g., Spirit, Liqueur, Mixer)
    • Category/Style (e.g., “Jamaican Rum”, “Amaro”, “Tonic Water”)
    • Volume and Unit (e.g., 750, ml)
    • Storage Location within a venue (e.g., “Pantry”, “Bar Shelf”)
    • Current Level (e.g., Full, 75%, 500ml)
  • The system should record the product in the inventory.
  • The new product should be available for use in recipes and for inventory checks.
  • And when viewing a product, I can see visual level indicators:
    • Horizontal bar indicator showing fill level
    • Vertical bottle-like indicator showing fill level
    • Compact badge with percentage
    • Detailed indicator with full information
  • And level indicators are color-coded by status (full, high, medium, low, empty)

IMPLEMENTED (December 2025)

Product Level Visualization:

  • ProductLevelIndicator component with multiple variants:
    • bar - Horizontal bar (default)
    • vertical - Bottle-like vertical bar
    • compact - Small badge
    • detailed - Full information display
  • Color-coded by fill level (green, yellow, orange, red)
  • Integration into product detail screen

Files Created:

  • shaker/components/ProductLevelIndicator.tsx - Level visualization component

Files Modified:

  • shaker/app/(tabs)/inventory/products/[id].tsx - Added level indicators
  • shaker/app/(tabs)/inventory/products/index.tsx - Added level indicators to list

See:

  • This story covers the manual addition of a product. A separate story will cover adding a product by scanning a barcode.
  • The persona is “Host” but could also be “Bartender”.
  • AddProductToInventory (C50)