Add a Recipe
As a Host, I want to add a new drink recipe to my collection, so that I can organize my drink knowledge and use it for menu planning.
Acceptance Criteria
Section titled “Acceptance Criteria”- I must provide a Name for the recipe (e.g., “Classic Mai Tai”).
- I must be able to add a list of Ingredients with specific quantities and units (e.g., “2 oz Appleton Estate Signature Rum”, “1 oz Lime Juice”, “0.5 oz Orgeat”).
- I must provide the preparation Instructions.
- I can optionally provide:
- A Description of the cocktail.
- The recommended Glass Type (e.g., “Double Rocks”).
- The recommended Ice Type (e.g., “Crushed”).
- Instructions for the Garnish (e.g., “Mint sprig and spent lime shell”).
- A list of Required Tools.
- Tags for organization (e.g., “Tiki”, “Rum”, “Classic”).
- The recipe should be saved and available for adding to menus.
Implementation Status
Section titled “Implementation Status”✅ IMPLEMENTED (December 2025)
Implementation Details
Section titled “Implementation Details”Files Created:
shaker/app/(tabs)/recipes/add-recipe.tsx- Main form componentshaker/app/(tabs)/recipes/add-recipe/formTypes.ts- Type definitionsshaker/app/(tabs)/recipes/add-recipe/formFields.ts- Picker optionsshaker/app/(tabs)/recipes/add-recipe/formHelpers.ts- Helper functionsshaker/app/(tabs)/recipes/add-recipe/formValidation.ts- Validation logic
Features:
- All required fields (Name, Ingredients, Instructions)
- All optional fields from acceptance criteria
- Additional features:
- Category and difficulty classification
- Author field
- Prep time and servings
- Dynamic ingredient/instruction management
- Instruction reordering (up/down arrows)
- Comprehensive form validation
- Success/error feedback with alerts
Known Limitations:
- ⚠️ GraphQL CreateRecipe mutation not yet connected (uses simulated API call for now)
See: Add Recipe Implementation for complete details.
Related Commands
Section titled “Related Commands”CreateRecipe(C12)LinkToolsToRecipe(C36)TagRecipe(C15)
Other Recipes
Section titled “Other Recipes”Dark & Stormy
Section titled “Dark & Stormy”- Fill cup 3/4 with ice
- Pour 1.5 oz Appleton Rum
- Fill cup with Ginger Beer
- Splash of Angostura bitters
Deep End Cider
Section titled “Deep End Cider”- Fill cup 3/4 with ice
- Pour 1 oz Bullit Bourbon
- Pour 1 oz Goldschlager Cinnamon Schnapps
- Fill cup with Apple Cider
Little Death ;)
Section titled “Little Death ;)”- Prickly Pear Margarita but dye the mixer black?
The ShowGhoul
Section titled “The ShowGhoul”- Fill cup 3/4 with ice
- Pour 1.5 oz Caramel Vodka
- Pour 3oz Prosecco
- Fill cup with Pear juice
- Add shimmer (edible glitter)
Starfucker (Shot)
Section titled “Starfucker (Shot)”- 1 oz Crown Royal Canadian whisky
- 2 oz Watermelon Pucker schnapps
- 6 oz Red Bull energy drink
Dirty Dancer
Section titled “Dirty Dancer”- Fill cup 3/4 with ice
- Pour 1 oz Raspberry Vodka
- Pour 1 oz Strawberry Liqueur
- Fill cup with Pineapple Juice
Harvest Punch
Section titled “Harvest Punch”- 6 c. ice
- 1/2 gal apple cider
- 1 (750 mL) bottle Prosecco, chilled
- 1 c. vodka
- 2 (12 oz) can ginger beer
- 3 apples, sliced
- 2 oranges, sliced into triangles, plus more for rimming
- 8 cinnamon sticks
- Cinnamon sugar, for rimming
Dracula’s Blood
Section titled “Dracula’s Blood”- Fill cup 3/4 with ice
- Pour 2 oz White Rum
- Pour 3/4 oz Peach Schnapps
- Add 2 tsp Grenadine
- Fill cup with Black Cherry Juice (3 oz)
Michelada
Section titled “Michelada”- Rim glass with Tajín or salt
- Fill glass with ice
- Add 2 oz lime juice
- Add 1 tsp Worcestershire sauce
- Add 2 dashes hot sauce (Tabasco or Valentina)
- Add 1 dash soy sauce
- Fill with Modelo Especial beer (12 oz)
- Garnish with lime wedge