Getting Started
AnyCable acts like a bridge between logic-less real-time server and Action Cable-like Ruby framework (i.e. framework which support Action Cable protocol). AnyCable is a multi-transport server supporting WebSockets, Server-Sent Events and long-polling.
The primary goal of AnyCable is to make it possible to write a high-performant real-time application using Ruby as a language for implementing a business-logic.
This goal is achieved by moving low-level responsibility (handling connections, parsing frames, broadcasting data) to real-time servers written in other languages (such as Golang or Erlang).
AnyCable could be used with the existing Action Cable clients (such as Rails JavaScript client or Action Cable CLI) without any change. However, for web development we recommend using AnyCable JS/TS client, which provides better compatibility with AnyCable-specific features.
You can use AnyCable with:
- Action Cable (Rails) applications (see Using with Rails)
- Hotwire applications (see Using with Hotwire)
- Lite Cable for plain Ruby projects (see Using with Ruby)
- your own AnyCable-compatible framework.