Swiftpack.co - tesseract-one/WebSocket.swift as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by tesseract-one.
tesseract-one/WebSocket.swift 0.2.0
Cross-platform WebSocket client implementation based on Swift NIO
⭐️ 4
🕓 3 weeks ago
.package(url: "https://github.com/tesseract-one/WebSocket.swift.git", from: "0.2.0")


🐧 linux: ready GitHub license Build Status GitHub release SPM compatible CocoaPods version Platform OS X | iOS | tvOS | watchOS | Linux

Cross-platform WebSocket client implementation based on Swift NIO


We have good WebSocket libraries for Apple platforms, but we need it on Linux too. This library based on Apple Swift NIO framework, which allows it to be cross-platform.

Getting started


Package Manager

Add the following dependency to your Package.swift:

.package(url: "https://github.com/tesseract-one/WebSocket.swift.git", from: "0.2.0")

Run swift build and build your app.


Add the following to your Podfile:

pod 'TesseractWebSocket.swift', '~> 0.2'

Then run pod install


Echo Connection

import Foundation
import WebSocket

let socket = WebSocket()

socket.onConnected = { ws in

socket.onData = { data, ws in
  print("Received", data)
  assert(data.text! == "hello")

socket.connect(url: URL(string: "wss://echo.websocket.org")!)

WARNING! You should always disconnect WebSocket. It will leak otherwise! And will leak thread too!



WebSocket.swift is available under the Apache 2.0 license. See the LICENSE file for more information.


Stars: 4
Last commit: 3 weeks ago
jonrohan Something's broken? Yell at me @ptrpavlik. Praise and feedback (and money) is also welcome.

Release Notes

Moved to Swift 5.4. Updated Swift NIO.
3 weeks ago

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics