What problem does it solve?
Provides concise, opinionated guidance for adding Hotwire interactivity to Rails applications so teams avoid fragile ad-hoc implementations and inconsistent UX. It helps decide when to use Turbo Frames, Turbo Streams, Stimulus, or React islands and documents common pitfalls, error handling, and testing strategies.
Core Features & Use Cases
- Decision guidance: A quick table that maps common interaction needs to the right Hotwire primitive (Turbo Frame, Turbo Stream, Stimulus, React via Turbo Mount).
- Patterns and examples: Inline editing, lazy-loading frames, modal/drawer frames, tabbed frames, multi-target stream updates, broadcasting, and Stimulus controller conventions.
- Integrations and constraints: Advice on using Bali ViewComponents, testing (Minitest/Jest examples), performance tips, and error/status handling for 4xx/5xx responses.
- Developer workflow: Recommendations for minimal implementations, progressive enhancement, and how to structure turbo_stream templates and controller responses.
Quick Start
Add Turbo Frames for scoped updates, Turbo Streams for multi-target or real-time broadcasts, and a Stimulus controller for client-side behavior to implement inline editing on the messages index.