Loffee Labs Integration

I’ve been back from vacation for a couple of weeks now. I’d love to say it was all smooth sailing, but… it wasn’t. 😥

For about 4 hours on July 9th, Visualizer was having issues. As far as I could tell, it wasn’t down, just really slow. Everything went back to normal after a server restart, so I didn’t spend much more holiday time on it. If you’re curious, there’s an incident report on the status page.

Now for the fun stuff: there’s been a ton of changes since I got back. Some small bug fixes and dependency updates, but also some big things!

Thanks to a pull request from Silverfoxy, Visualizer now supports GagiMate. It always makes me happy to see this community expanding to other machines!

But the biggest change (as you probably guessed from the title) is integration with Loffee Labs Bean Base. I only found out about the project a little over a week ago, from a Beanconqueror Instagram story. Loffee had just added import support for Beanconqueror, and as soon as I saw that this kind of database existed, I knew I wanted it in Visualizer too.

After some back-and-forth with Loffee and brainstorming ideas, I came up with a pretty simple system. When editing a shot, there’s now a new field above Roaster and Coffee called Search Loffee Labs Bean Base. Anything you type here (min. 4 characters) will trigger a search across the entire Bean Base:

Loffee Coffee Search

Pick one, and Visualizer will autofill the Roaster and Coffee fields. On the show page, you’ll see all the info Bean Base has for that coffee:

Loffee Coffee Information

Right now this is available only to free users and Premium users who do not use Coffee Management. I need a deeper think about it and some data restructuring, but don’t worry, it’s definitely coming. If for no other reason, it’s because I use Coffee Management and personally want this ASAP. 😆

Let me know how all of this works out for you. Especially if you find a bug!

Enjoy the rest of your Sunday! ☕


Summer Vacation 🇹🇭

A very short post today as I’m basically just announcing that I’ll be in Thailand for the next month. I hope I don’t jinx anything, but Visualizer has been very stable since I migrated it away from Fly.io.

I’ll have my laptop with me so I’ll be able to act in case something urgent pops up. Don’t expect any features or updates though. I’ll be back at the end of July and I’m sure I’ll come back with a ton of new ideas I’ll want to implement.

As always, here’s the change log since the last update: a ton of dependency updates, some bug fixes, and LLM generated API docs.

I hope you enjoy your summer (or winter if you’re on the other side of the globe 🥶), and please try not to break anything while I’m gone. 🍸


Tagging UX Gets an Upgrade

After another great GitHub suggestion I took a deep dive into improving the tagging UX and I’m proud to say it has shipped now:

Tag Selector

Under the hood I’m using Tagify, because unlike combobox it’s too complicated for me to make my own from scratch. Also, I quite like Tagify’s code so adding this dependency should be fine. Hopefully not famous last words. 😅

Like seemingly every time, we found more rough edges in my Airtable sync engine, so there were (hopefully) some improvements there too. As always, feel free to check the full changelog if you’re interested.

Oh, and yesterday I noticed something wild: Visualizer’s database just hit over 3 million shots (3,094,972 as I’m writing this)! 🤯 It feels like we just celebrated 1M. Thank you all for your continued trust in the platform! I honestly never thought anything like this could even happen. 🥰

Until next time! ☕