Week 05/06 - OAuth Bridge Components, Turbo + ActionCable Trap, and more!
Discover the latest Hotwire insights, tutorials, and releases in this week edition of Hotwire Weekly!

Welcome to Hotwire Weekly!
Welcome to another issue of Hotwire Weekly! Happy reading! 🚀✨
📚 Articles, Tutorials, and Videos
Implementing OAuth in Hotwire Native apps with Bridge Components - Mike Dalton shows how to build a reusable OAuth bridge component for Hotwire Native, letting your app authenticate with external providers.
Responsive code formatting on web - Paweł Pacana explores how to make code listings adapt their formatting for different container sizes using CSS container queries, smart typographic patterns and Turbo Frames.
The Turbo + ActionCable Trap: When Your Real-Time Rails Feature Fights Itself - Ed Ruder warns about a subtle pitfall when combining Turbo Streams with Action Cable: blindly broadcasting multiple streams (especially with overlapping targets) can cause unexpected DOM swaps and flicker. He outlines patterns to avoid these traps and keep real-time updates stable and predictable.
Tutorialkit.rb: the ruby.wasm journey goes onward - Albert Pazderin and Vladimir Dementyev on the Evil Martians blog showcase TutorialKit.rb, a Ruby-powered toolkit compiled to WebAssembly that lets you build interactive tutorials and REPL-style experiences in the browser without leaving Ruby out of the loop.
Replace Turbo confirm with native dialog - Rails Designer shows how to replace data-turbo-confirm with a custom JS/HTML pattern that avoids Turbo’s built-in modal, giving you prettier, more accessible confirmation dialogs.
Optimistic UI in Rails with optimism... and Inertia - Svyatoslav Kryukov on the Evil Martians blog demonstrates building optimistic UIs in Rails apps using Inertia.js, giving users instant feedback while background requests finish and keeping server state authoritative.
CSS @scope: An Alternative To Naming Conventions And Heavy Abstractions - Blake Lundquist on the Smashing Magazine blog explores how the new :scope selector and modern CSS scoping features reduce the need for complex naming conventions (like BEM), making styles more maintainable and predictable, a useful pattern for Rails/Hotwire apps with componentized UI.
The "Master Hotwire" book is complete - Radan Skorić announced that his "Master Hotwire - Build Modern Web Apps with Rails Simplicity" book is complete. Consider getting a copy on his website at masterhotwire.com.
Simple Tailwind CSS 4 Setup for Jekyll - Andy Croll walks through an easy way to add Tailwind CSS 4 to a Jekyll site using PostCSS, @tailwind directives, and minimal config.
Creating a link-icon custom element - Rails Designer shows how to build reusable custom <link-icon> elements that automatically add SVG icons to your links, keeping markup clean and UI consistent without extra JS.
Dead Code Podcast: Zero Specificity - Stephen Margheim joined Jared Norman on the Dead Code Podcast and talks about a missing middle layer in design systems: reusable, low-specificity CSS “affordances” that sit between Tailwind utilities and full components.
Hotwire Club: Turbo Frames - Using External Forms - Julian Rubisch published a new challange for The Hotwire Club about external Forms and Turbo Frames.
🎉 Releases
turbo-rails v2.0.22 - and v2.0.23 - Turbo integration for Rails.
turbo-confirm v2.2.2 - Add custom confirmation dialog support to Rails apps.
hotwire_club-mcp v0.1.1 - A Model Context Protocol (MCP) server that provides access to the Hotwire Club knowledge base.
phlex v2.4.1 - Build HTML, SVG and CSV views with Ruby classes.
herb v0.8.10 - Powerful and seamless HTML-aware ERB parsing and tooling.
reactionview v0.2.1 - A new ActionView-compatible ERB engine with modern DX - re-imagined with Herb.
rails_icons v1.6.1 - Add any icon library to a Rails app.
anycable v1.6.9 - Realtime server for reliable two-way communication to power-up any backend.
lexxy v0.7.4.beta - A modern rich text editor for Rails.
proscenium v0.23.0 - Modern client-side development for Rails.
tom-select v2.4.6 - A lightweight hybrid of a textbox and select box.
Feel free to follow us on Twitter/X, Bluesky, Linkedin, or on Mastodon!
See you next week!