Server-side Ruby making magic happen on the client, in real-time
What is CableReady?
CableReady is a Ruby gem that was first released in May 2017. It lets you create great real-time user experiences by triggering client-side DOM changes, events and notifications over ActionCable web sockets. These commands are called operations.
Unlike Ajax requests, operations are not always initiated by user activity - or even the user's browser.
You can broadcast one or many operations at once from inside a Reflex, as well as ActiveRecord callbacks, ActiveJobs, ActionCable Channels, controller actions, rake tasks and in response to API calls and webhooks.
Operations can be broadcast to one person, every person online, or ad hoc groups of people - making real-time notifications, live comments on a blog post, form validations, collaborative editing, shared media viewing, endless page scrolling and lazy asset loading laughably trivial.
Get Involved. We are stronger together! Please join us in #cableready on Discord.
Perhaps you've grown tired of the ever-growing complexity of the JS ecosystem. Single Page Applications are frequently lauded as the only way to build "modern" sites... even though we remember how easily one person could build powerful sites with Rails in 2004.
Or maybe you've realized that trying to synchronize state between the client and server over a stateless protocol is a Sisyphean task. How much time and energy could we reclaim for more interesting problems if we didn't need to write complex branching UI logic to update what the user sees?