Weekly Brain Dump #32
At a Glance
- Widget Development Making good progress here
- Ruby to JavaScript Disheartening experimentation
- Interesting Links Cool things I found this week
- Comments
Widget Development
Made some good progress with my pomodoro timer widget development.
I’ve added two requested features. You can now style a lot more of the widget and can now set custom sounds for when sessions and breaks start!
You can check this new functionality out over on Emma’s recent stream.
I’m currently working on getting auto-updating working. Neutralino thankfully makes it extremely easy, I just need to put the manifest somewhere with CORS open. I’m excited to get this done as it’ll make it feel like a more “real” product in my mind. It also means I don’t have to tell Emma to upgrade, it’ll just happen. It may also be the feature that makes me comfortable selling it.
Ruby to JavaScript
I had a bit of an experimental night with this premise to see if I could reasonably make it work in my workflow.
My big requirements that I won’t budge on are:
- Must work with my pipeline (ESBuild preferred)
- Must have sourcemaps
- Must let me work with regular JavaScript libraries
I don’t think this is too much to ask.
Ruby2JS
I tried this first as it claimed to have support for ESBuild. I could not get it working with ESBuild using either the out of date plugin from the documentation or the newer plugin listed in the git repository. I also tried their Vite plugin and couldn’t get that working either.
This doesn’t phase me too much as I would have preferred using OpalRB as it seems more in line with what I expect out of a tool like this.
OpalRB
I wanted this to work so bad but there was no plugin that I could get working for any JavaScript packager. There was one for Webpack that was quite old but I refuse to go back to Webpack after the trauma.
I did consider using the command line to pipe the output to where ESBuild could read and build it but then I knew I wouldn’t have sourcemaps at all. That’s just not going to be good enough for when I hit some nasty debugging, I just know it.
mruby
For completeness I considered mruby too. I didn’t expect it to work at all for what I wanted without a huge amount of effort, and even then I don’t think it’d ever be a reasonable development platform.
There were no plugins, no possibility for sourcemaps, and tying into JavaScript libraries would be a nightmare.
Conclusion
I just don’t mind writing JavaScript enough to accept these solutions as they are. I hold out hope that one day I’ll be able to use Ruby for front end web development, but today is not that day.
Interesting Links
Frontend Ruby on Rails with Glimmer DSL for Web — Andy Maleh | RubyConf Austria 2026: This feels like a pretty cool thing but I struggle to get behind the syntax. Also OpalRB still scares me.
Raindeer: An interesting new web framework for Ruby.
How a flaky test exposed a Redis client use-after-free: Nothing like a good segfault to get the blood pumping.