Here I was, adding the code you posted above to the version I downloaded when I noticed that you added it already! Nice lol. It works great the way you implemented it there.
Now there are 2 things I'd like to propose to you, if you're open to it. First, I'd prefer it if there was a way for me to check the version of your API programmatically. Just a remote function like version=function() return 1 end
, where the number is increased every time the API is changed significantly. It's not super important, but would be nice to have to avoid a crash when something has changed.
Secondly, is there already a way for your mod to open on a specific recipe? By that I mean, open on a given item, and have one of it's recipes already pre-selected. If so, it would be cool to do that by API as well, so a user can click on a recipe in my mod, and see it already selected in WIIRUF. The remote interface would take the name of an item and a recipe (in addition to the player_index).
Now neither of these are super important, I'm very happy with the basic implementation already. It's just something for you to consider.
(Also, you probably don't have a distinction internally between items and fluids? Because I'm not sure what would happen if an item and a fluid had the same name. If you don't, it's no big deal, it's unlikely anyways. If you do, you could add a type-argument to the interface.)