A Swift client for Rails ActionCable, enabling real-time WebSocket communication in iOS/macOS apps.
ActionCableClient is a Swift library that provides a native client for Rails ActionCable, the WebSocket server in Rails 5+. It enables iOS and macOS apps to establish real-time, bidirectional communication with Rails backends, abstracting WebSocket complexities for seamless integration of live features like chat or notifications.
iOS and macOS developers building Swift applications that require real-time communication with Rails backends using ActionCable.
Developers choose ActionCableClient for its dead-simple API that mirrors Rails ActionCable conventions, reducing boilerplate and handling WebSocket management automatically, making real-time feature implementation straightforward.
ActionCable is a new WebSocket server being released with Rails 5 which makes it easy to add real-time features to your app. This Swift client makes it dead-simple to connect with that server, abstracting away everything except what you need to get going.
The README shows easy setup with a URL and headers, plus callbacks like onConnected and onDisconnected, abstracting WebSocket complexities.
Provides a create method for channels with identifiers and auto-subscription, mirroring Rails conventions for straightforward real-time communication.
Offers closures for onReceive, onSubscribed, and other events, making it intuitive to handle server interactions without boilerplate code.
Allows setting custom headers like Authorization, as shown in the usage section, enabling seamless server-side authentication with Rails.
Tightly coupled to Rails ActionCable; switching to a different backend protocol requires significant code changes and loses abstraction benefits.
Relies on Starscream for WebSocket implementation, adding a layer that may introduce compatibility issues or require updates independent of this library.
Main documentation is on a separate wiki, not in the README, which can be less accessible and might not be as up-to-date or comprehensive.
A conforming Objective-C WebSocket client library.
Websockets in swift for iOS and OSX
Socket.IO-Client-Swift is an official client implementation of the Socket.IO protocol for Apple platforms. It allows iOS and macOS applications to establish real-time, bidirectional communication with Socket.IO servers, supporting features like events, acknowledgments, and binary data transfer. ## Key Features - **Server Compatibility** — Supports Socket.IO server versions 2.0, 3.0, and 4.0+ with detailed compatibility documentation. - **Transport Flexibility** — Supports both polling and WebSocket transports for reliable connection establishment. - **Binary Data Support** — Enables transmission of binary data alongside standard JSON payloads. - **Secure Communication** — Includes TLS/SSL support for encrypted connections. - **Event-Driven Architecture** — Provides a clean API for emitting and listening to custom events with acknowledgment callbacks. ## Philosophy The library follows the official Socket.IO specification closely, ensuring reliable interoperability with Socket.IO servers while providing a native Swift/Objective-C API that feels natural to Apple platform developers.
The easy way to use sockets on Apple platforms
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.