[Suggestion] Recipe variants, Quick substitution from diary + Quick add Substitution
Hello hello its me again! This is a threefold complicated one so...
As a user I...
- want to select between different variations of a single recipe when adding to the diary
In order to...
- not need to create multiple independent copies of a conceptually similar recipe that I change often
So that i...
- can keep my recipe list clean and ordered
Any Figma users here? Think "Instance Swap" or Variants within a master component. Eg, swapping between Info/Alert/Warning icons in a status badge master component in your company Design System, or a single button component with many interactive states (error, disabled, hover etc).
Factorio players? Think parameterised blueprints. A single design for a train unloading station that you can choose what item or fluid it receives, in what minimum it can request and maximum it can hold, and how many trains can be en-route at the same time without needing to manually configure each parameter across the hundreds of times you use that blueprint and thousands of game entities its generates.
For everyone else's not nearly as nerdy as me to understand those two links above though
Switch between standard recipe variants
The idea is that I feel its quite redundant/clunky to essentially require the creation of entirely new recipe duplicates with only minor changes in them when, conceptually speaking, they are the same recipe.
For example, I've got an overnight Weetbix (Weetabix for anyone in US/UK) recipe that i eat basically every day. I've got it listed multiple times for all the different macro goal and mixture variations it can have and in the recipe list it pretty much looks like this:
🍎 [Maint] ChocPB 20/15 Overnight Weetbix
🍎 [Maint] Choc 30 Overnight Weetbix
🍎 [Cut] ChocPB 15/15 Overnight Weetbix
🍎 [Cut] Choc 20 Overnight Weetbix
etc etc. Essentially though the recipe is conceptually the same and is prepared in the same way, but the ingredients and macro goals can vary have common variations, for example:
- I use plain Weetbix in a Cut recipe, and high fibre ones in the Maintenance one
- Sugar Free Syrup in Cut, Honey in Maintenance
- Toppings can be mixed nuts, chocolate chips, granola or pumpkin seeds. In cut I don't have any toppings.
- High Protein Milk in maintenance, almond milk in cut
So when adding a conceptually similar recipe from the diary that has different variants, i'd be presented with something that looks like this:
(Please add macronutrient basics next to each recipe in the list view too, please)
Overnight Oats ⬇️
- Cut Choc (20) [+Add to Diary] (0 P | 0 F | 0 C)
- Cut ChocPB (15/15) [+Add to Diary] (0 P | 0 F | 0 C)
- Maint ChocPB (20/15) +Nuts [+Add to Diary] (0 P | 0 F | 0 C)
- Maint ChocPB (20/15) No Additives [+Add to Diary] (0 P | 0 F | 0 C)
These would be considered "default" recipe arrangements, this leans into the quick substitutions feature below.
Quick substitutions for ingredients in a recipe from Diary view
Recipes already allow you to "adjust" an instance of them on mobile to add/remove an ingredient or change its amounts.
This is good, it can be better, namely by not needing to manually search for the substituted ingredient each time, especially if its one I may need to change often or has an "optional" element i don't always include.
As a user I...
- want to quickly substitute ingredients in my recipies from the diary view from ingredients determined in advance
In order to...
- not need to create multiple copies of a conceptually similar recipe that I change often
- Not need to manually search the database whenever I want to substitute an ingredient
- not need to manually remove an unavailable ingredient
So that i...
- can quickly adjust a recipe based on known preferences
- Have increased clarity for when I am making an adjustment to a single instance of a recipe, not the default listing
When added to the Diary, In the recipe making view, ingredients added would be considered "default". Next to each ingredient however, would be a method to choose a valid "substitution" from the swipe menu.
In this example, we've got a Weetbix recipe that always includes an additive, such as mixed nuts, but in this case I want to have something else.
🍎 Maint ChocPB (20/15) +Nuts
- High Fiber Weetbix ( 000 | g )
- Almond Milk ( 000 | g )
- PB2 Powder ( 000 | g )
- Roasted Mixed Nuts [⬅️Left Swipe]
When i left swipe an ingredient (or right, as its unused), I want to be presented with the following if i swiped left:
🍎 Maint ChocPB (20/15)(With Nuts)
- High Fiber Weetbix ( 000 | g )
- Almond Milk ( 000 | g )
- PB2 Powder ( 000 | g )
- Roasted Mixed Nuts [♻️ Substitute | ❌ Delete ]
I can then be presented with an option to choose from pre-declared substitutions I've made in the recipe building feature:
🍎 Maint ChocPB (20/15) +Nuts
- High Fiber Weetbix ( 000 | g )
- Almond Milk ( 000 | g )
- PB2 Powder ( 000 | g )
- Roasted Mixed Nuts [♻️ Substitute | ❌ Delete ]
♻️ Noshu Sugar Free Chocolate Chips ( 000 | g )
♻️ Black Chia Seeds ( 000 | g )
♻️ + Add New Substitution
Macronutrients adjust themselves accordingly, and result:
🍎 Maint ChocPB (20/15) +Nuts
- High Fiber Weetbix ( 000 | g )
- Almond Milk ( 000 | g )
- PB2 Powder ( 000 | g )
- ♻️ Noshu Sugar Free Chocolate Chips ( 000 | g )
Optional ingredient spaces
Next, in this scenario we also have a Weetbix recipe.
However, instead of having different default topping variants on top of my macro goal variants; I've decided to create a single maintenance macro goal variant that uses "Maintenance ingredients" ratios and have the toppings as optional, default as "None".
I make the recipe, add no toppings to it and put it in the fridge, add it to my diary and go to bed. Zzz...
Start:
🍎 Maint ChocPB (20/15) No Toppings
I've woken up, and I feel like adding some sugar free choc chips today.
Step 1:
🍎 Maint ChocPB (20/15) No Toppings (👆tap)
Step 2
🍎 Maint ChocPB (20/15) No Toppings
- High Fiber Weetbix ( 000 | g )
- Almond Milk ( 000 | g )
- PB2 Powder ( 000 | g )
- etc etc... ( 000 | g )
⬆️ "Toppings" (👆tap)
Step 3:
🍎 Maint ChocPB (20/15) No Toppings
- High Fiber Weetbix ( 000 | g )
- Almond Milk ( 000 | g )
- PB2 Powder ( 000 | g )
- etc etc... ( 000 | g )
⬇️ "Toppings"
♻️ Noshu Sugar Free Chocolate Chips ( 000 | g ) (👆tap)
♻️ Black Chia Seeds ( 000 | g )
♻️ Roasted Mixed Nuts ( 000 | g )
♻️ + Add new substitution
Result:
🍎 Maint ChocPB (20/15) No Toppings
- High Fiber Weetbix ( 000 | g )
- Almond Milk ( 000 | g )
- PB2 Powder ( 000 | g )
- etc etc... ( 000 | g )
⬆️ "Noshu Sugar Free Chocolate Chips" ( 000 | g )
Finally, if an ingredient already has substitution enabled, and I need to choose an ingredient that isn't on the declared list already, the final option of the dropdown should always be "Add new Substitution".
This lets me search for and substitute the ingredient, then confirm with me if I want to have it added as a valid substitution to the default recipe from that point forward.
Thanks for reading! :)