Oh the stuff I would have built if I had access to LLMs while I was still working on Basil. https://twitter.com/binalkp91/status/1605625626358054937?s=46&t=XjWCjo-LrFL3ut89PBiK5A
Binal Patel on Twitter

“New blog post - using GPT3 to generate structured recipe data from free-text. I'm pretty impressed - it does very well in NER like tasks and can output valid JSON without any intermediate steps. https://t.co/rhkvTm20wo”

Twitter
In the first version, I wanted to be able to identify time measures in directions (“do X for 30 minutes”), so Basil could turn them into buttons which would start a timer. I had no real idea for how to do that then, but @skoda jumped in and built it—which made for an awesome feature for Basil.

@skoda Here’s a fun throwback mid-development screenshot I found of the feature (from a decade ago!).

After launch, I wanted to add a feature where users could select their preferred measuring units (imperial or metric), and Basil would parse measures in ingredients, and convert them to their preferred units. So I built on top of the great foundation Chuck had given me to parse measures and do conversions. What a learning experience that was.

Parsing measures was relatively easy. Correctly interpreting them was not. Sometimes recipes would say “1 1/4 cups sugar”, so the measure span would be “1 1/4 cups”. Others would say things like “2 8oz cans tomato sauce”, where the measure span would need to be “8oz”. Not so easy when all you’ve got is a tokenizer!
I wanted to support auto-classification of recipes within Basil by meal type and cuisine type then, but had no good way to do it. That would be extremely straight forward now. Doing things like auto-pairing recipes into meals, or categorizing recipes by more conceptual types (“healthy” and “quick” and “dinner”) would also be very approachable.
While I’m going down memory lane. Something I wanted to build, but wasn’t able to then, was a meal planner in Basil with a connection to a meal service like Blue Apron, so you could create your weekly meal plans for whatever recipes you want, and then the meal service would package up the ingredients for you. That’d still be pretty nice.
I experimented with auto-parsing food items within ingredients as well, so along with the measures and a nutritional API, Basil would be able to approximate the nutritional content of a recipe, too. I thought that would be a huge enabler for grouping recipes and making great recommendations for what to cook.
Saving recipes would’ve been dead simple, too. No JavaScript, and building in workarounds for poor HTML structure, etc. Just a prompt.
That’s really just the start. I wanted to make Basil’s cooking view fully voice operable, too, so you could use it while cooking without ever touching the screen. “What’s the next step?” “Start the timer” etc. But there wasn’t an easy way to do it. Now it would be very straight forward, and could be so powerful.
“How much garam masala goes in?” “How long do I simmer the sauce?” “Add a note that I doubled the spices used” Etc etc. Very free form, both asking the app about the recipe as you’re cooking it in a natural way, and interacting with the app. All very doable now.
@kbaxter I loved Basil.
@tewha Thanks so much! I loved working on it. I wish I still had enough time to keep developing it.
@kbaxter Me too but I get it. 😀
@kbaxter that was really fun to work on! And you paid me too!