A conforming WebSocket (RFC 6455) client library written in Swift for iOS and macOS.
Starscream is a WebSocket client library written in Swift that enables real-time, bidirectional communication for iOS and macOS applications. It implements the RFC 6455 WebSocket standard, allowing developers to build features like live chats, notifications, and data streaming. The library handles low-level protocol details while providing a clean, Swift-native API.
iOS and macOS developers building apps that require real-time communication with servers, such as chat applications, live dashboards, multiplayer games, or collaborative tools.
Developers choose Starscream for its strict standards compliance, non-blocking background processing, and comprehensive feature set including TLS support and compression. It's a mature, well-maintained library that simplifies WebSocket integration in Swift projects.
Websockets in swift for iOS and OSX
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Fully conforms to RFC 6455 and passes the Autobahn test suite, ensuring reliable and interoperable WebSocket communication as highlighted in the README.
Uses Grand Central Dispatch for background processing, preventing main thread blocking and keeping UI responsive, which is a core feature emphasized in the documentation.
Supports TLS/WSS, SSL pinning, and RFC 7692 compression, providing secure and efficient data transmission with options for self-signed certificates as detailed in the README.
Offers both delegate and closure-based event handling, along with custom queue support for callback management, allowing developers to choose their preferred coding style.
The README explicitly lists proxy support as a TODO, which can be a significant limitation in corporate or restricted network environments requiring proxy configurations.
Admitted lack of thread-safe implementation in the TODOs, potentially leading to issues in multi-threaded applications or concurrent WebSocket operations.
Only available for iOS and macOS, excluding other Apple platforms like tvOS or watchOS without modifications, and not suitable for server-side Swift projects.