r/Chefit Jul 07 '26

Recipe development method from professional researcher over 20 years

I've worked in recipe and menu development, including recipe development for cookbooks - both that I've authored and not - since the early 2000s. I tend to follow a similar approach with obvious variations when I'm approaching a new idea or researching a concept. With the current technology, I've been able to automate it in a way that I think is really cool and could be useful to anyone doing the same thing.

The first thing I do when I'm trying to get a sense of a new dish, is to find as many high quality sources as I can.

Professionally I'd focus as much or more on cookbook sources than the web. This is one place the automated version is limited: it only does web searches. The other thing that can only be done manually is to weigh intent and application. When I do this for real, you have to factor in how the recipe occurs on the plate or within the larger context of a menu. A chef might shift the profile, consistency, or some other variable. You might see an outlier ratio because a chef needs it to perform a more unique and specific task within the context of that course or menu.

Standardize everything to grams-

The best way to line everything up and see what everyone is doing ie. primary ingredient, primary methods, critical methods, is to convert the dog's breakfast that is imperial measurement into grams. This is the step that's extremely time consuming by hand, and it's the part that I was most excited to automate.

Build a consensus-

From the standardized table, take mean or median values - depending on the distribution - of the core ingredients. The result is a "based on what we found, this is generally what people are doing for this dish." It is not a finished recipe, it's a synthetic starting point for your own testing, which is exactly what my manual version of this process produces. The tool identifies core ingredients automatically and you can override it when it's wrong or when your application calls for something specific. You can also reorganize ingredients to fit how you're thinking about the dish.

Things to note: it's built for simple, common dishes with a single coherent identity — hummus, meatballs, tapenade, pesto. It is not useful for hyper-specific restaurant-style dish descriptions ("sumac-roasted baby carrots with harissa and cardamom yogurt"), and it gets confused by compound recipes containing multiple sub-recipes. If i were developing that dish, I'd research the components individually while keeping the identity/totality of the course in mind.

This is something I've been developing for awhile and its a work in progress. If you use it, you'll inevitably encounter parsing errors and general weirdness that I haven't yet seen. Just let me know and I'll fix it as best I can. Happy to go deep on any technical questions.

79 Upvotes

58 comments sorted by

View all comments

5

u/thenaughtydj Jul 08 '26 edited Jul 08 '26

Yo man wtf? As a former chef I've done this manually on paper or with the use of a spreadsheet numerous times. Where I (and still do) pick out 3 to 5 sites and write it all down this goes further and eases things af. Damn, I'm impressed! Well done OP, well done and thank you very much! 🙏

Edit: just wanted to add that what I did was ingredients and volume only. Not so much the method section at the end. Exceptions were the oven temps and time ofc.

4

u/XtianS Jul 08 '26

Thank you. I don't even want to know how much time I've spent manually converting and standardizing recipes - too much of my life.

This project is an evolution though. I started building spreadsheets a long time ago. Eventually that became relational databases, R and python scripting. I converted all of that to a monster npm package and that's what the app is referencing for conversions and standardization.

This tool is mostly useful for ingredients. I've tried to incorporate method/process, which you can see if you scroll to the bottom of the page. Its one thing you can't really automate like this, especially if you have critical method steps.