Better Jow

I absolutely love using Jow because it saves me so much time! I often find myself clueless about what to eat or what to pick up at the grocery store. I've been a fan since they launched, but lately, I've noticed it takes longer to get a good set of meal suggestions. Their algorithm doesn’t seem as powerful as it used to be.

On the bright side, I’m a huge fan of browser extensions — they're great for adding missing features or tweaking the web experience. Developing these extensions can be tricky, though, because you need to understand the web app inside out. So, I spent some time reverse-engineering Jow. By the way, LLMs are fantastic assistants for this, especially when you're deciphering minified source code. Everything becomes so much clearer with their help!

I decided to create my own suggestion algorithm using Jow's as a base but with some added steps. I wanted to avoid suggesting recipes I’ve already chosen in the past 30 days and limit the number of long recipes since I need some quick meals during the week. Plus, I aimed for a good variety of recipes. By keeping Jow's algorithm, I didn't have to worry about managing recipe storage and updates. And I could still use all their features like user preferences and tools, ensuring that the recipes suggested are ones I can actually eat and make.

Finally, I replaced the submit button with my own, complete with an awesome shiny effect, to maintain the same user experience.

I might add more rules in the future, like considering recipe calories or reducing food waste.

Screenshots

The menu creation page with a number of meals input and a shinny submit button. The extension popup on the bottom left corner with the extension settings.
The menu creation page with the extension popup.

Technical stack

Source code

https://github.com/GauPanisset/better-jow