This month we don’t have videos and articles to share but some news and discoveries (and a bit of PHP—is it a trick or treat 🎃?)
Highlights
Yet another gem from Nate Hopkins, turbo_reflex allows you to handle client-side events triggered by Turbo Frames via reflexes (like in StimulusReflex).
StimulusReflex Patterns goes freemium
StimulusReflex Patterns is an online course (or e-book 🤔) focusing on different aspects (and patterns) of building reactive Rails applications with StimulusReflex and CableReady. (By the way, Julian Rubisch, the author, is also working on The CableReady Book, pre-release is already available!)
Discoveries
Real-time Editing of Issue Descriptions | GitLab
A research group within GitLab works on collaborative editing features and shares the progress. Keywords: y-crdt, WebSockets.
Releases
A new major release of the most popular (and Rails default) web server has arrived! (However, there is problem with Action Cable / Turbo Streams; please, wait for the fix to be released)
Frame of curiosity: LiveWire
Reactive HTML-driven web applications are getting more and more popular. In the Ruby and Rails world, we have StimulusReflex and Hotwire. Elixir gave us LiveView. But today, I’d like to draw your attention to PHP, Laravel, and LiveWire.
Why talk about Laravel at all (assuming most readers are Rubyists)? The answer is a single word: inspiration. Yes, Laravel was inspired by Rails, but now it’s a self-sufficient framework with a vast ecosystem. So it may be time for Rails to learn something back.
LiveWire is an especially interesting piece of the Laravel ecosystem. One might think it’s just StimulusReflex (with Alpine.js instead of Stimulus.js). It is the same as “StimulusReflex is LiveView for Rails” (you know, it is not, do you?).
Without going deep into details, I want to drop a few random links to encourage you to learn more about the framework:
wire:poll and wire:offline.
LiveWire isn’t actually live (and more on why LiveWire switched from WebSockets to AJAX for RPC).
Notes on upcoming LiveWire 3.0 (batch requests, transitions).