0.33
A long-lived project that still receives updates
Out-of-Band Server Triggered DOM Operations
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

 Project Readme

Welcome to CableReady 👋

downloads License: MIT Documentation
semantic-release Ruby Code Style JavaScript Code Style
Prettier-Standard StandardRB Tests


CableReady helps you create great real-time user experiences by making it simple to trigger client-side DOM changes from server-side Ruby. It establishes a standard for interacting with the client via ActionCable web sockets. No need for custom JavaScript.

Please read the official ActionCable docs to learn more about ActionCable before proceeding.

📚 Docs

💙 Community

  • Discord - primary support channel

🚀 Install

Rubygem

bundle add cable_ready

JavaScript

There are a few ways to install the CableReady JavaScript client, depending on your application setup.

ESBuild / Webpacker

yarn add cable_ready

Import maps:

# config/importmap.rb

# ...

pin 'cable_ready', to: 'cable_ready.js', preload: true

Rails Asset pipeline (Sprockets):

<!-- app/views/layouts/application.html.erb -->

<%= javascript_include_tag "cable_ready.umd.js", "data-turbo-track": "reload" %>

Checkout the documentation to continue!

🙏 Contributing

Code of Conduct

Everyone interacting with CableReady is expected to follow the Code of Conduct

Coding Standards

This project uses Standard and prettier-standard to minimize bike shedding related to code formatting.

Please run ./bin/standardize prior submitting pull requests.

📦 Releasing

  1. Make sure that you run yarn and bundle to pick up the latest.
  2. Bump version number at lib/cable_ready/version.rb. Pre-release versions use .preN
  3. Run rake build and yarn build
  4. Commit and push changes to GitHub
  5. Run rake release
  6. Run yarn publish --no-git-tag-version
  7. Yarn will prompt you for the new version. Pre-release versions use -preN
  8. Commit and push changes to GitHub
  9. Create a new release on GitHub (here) and generate the changelog for the stable release for it

📝 License

CableReady is released under the MIT License.