Solo project since 4+ years. Zero AI, but algorithms that will probably make people believe otherwise: https://kastanj.ch/en?mid=hn47700460
The goal is to make every recipe foolproof on the first try, similar to when you walk into a restaurant and just pick what you want to eat without thinking about the details. The goal is to have the same experience, just pick what you want to eat, with recipes that tells you exactly what to do with no magic involved.
Technically it is probably the most advanced recipe app ever made. The database is a huge graph that captures the relations between ingredients and processes. Imagine 'raw potato'->'peeled potato'->'boiled potato'->'mashed potato'. It is all the same ingredients but different processing. The lines between the nodes define the process and the nodes are physical things. Recipes are defined as subsets of the graph. The graph can also wrap around into itself, which is apparently needed to properly define some European dishes in this system. The graph also has multiple layers to capture different relationships that are not process related.
Why was it designed it in this way? Because food/cooking is extremely complex. This design is the only way I have found that can capture enough of these complex relationships that the computer can also 'understand' what is going on.
My favourite thing about this is that each recipe is strictly defined in the graph. If the recipe skips a step, or something is undefined, the computer knows that the recipe is incomplete. It won't ask you to do 10 things at the same time and then have something magically appear out of nowhere. It is like compile time checking but for recipes.
It also enables some other superpowers, for example:
• Exclude meat part of the graph = vegetarian. Same thing works with allergies.
• Include meat part of graph = only show me recipes that contain meat.
• Recursive search: search for 'potato' and the computer will know that french fries are made from potato. It can therefore tell you that you could make the hamburger meal, but you will need to complete the french fries recipe first, which should take 60 minutes.
• Adjustable recipe difficulty (experimental): It knows which steps can be done in parallell, and which can't based on how the nodes connect. A beginner can get a slower paced recipe with breathing room between steps, while someone more experienced can do a faster pace and do more things in parallell.
If I knew what it would take to build this, I would never have gotten started. I completely underestimated the complexity of the problem I was trying to solve. But here we are, and now it is basically done and working.
The website is slightly outdated but captures the key points from a non-technical point of view, and you can enter your email and get notified when it will launch in your country.