Version0.10.13Verifiednot yet verifiedLicenseBSD-3-Clause
sigil-websocket
WebSocket protocol library — client + server, with TLS
Report a bug or suggest a featureReadme
sigil-websocket
A Sigil library for WebSocket client connections (RFC 6455). Supports both ws:// and wss:// (TLS) with cooperative non-blocking I/O.
Features
- TLS support -- connect to
ws://andwss://endpoints - Frame encoding/decoding -- text, binary, ping, pong, close
- Client masking -- automatic frame masking per RFC 6455
- Fragmentation -- transparent message reconstruction from continuation frames
- Cooperative I/O -- non-blocking receive that yields to the scheduler
Usage
Add sigil-websocket as a dependency in your package.sgl:
(from-git url: "codeberg:sigil/sigil-websocket" package: "sigil-websocket")Then connect and exchange messages:
(import (sigil websocket))
(define ws (ws-connect "wss://echo.websocket.org"))
(ws-send ws "Hello, WebSocket!")
(let loop ()
(let ((msg (ws-receive ws)))
(when (string? msg)
(display msg)
(loop))))
(ws-close ws)Modules
| Module | Description |
|---|---|
(sigil websocket) | Top-level re-exports |
(sigil websocket frame) | Frame encoding, decoding, masking |
(sigil websocket connection) | Handshake, send, receive, close |
Dependencies
- sigil-stdlib
- sigil-socket
- sigil-crypto
Building
sigil deps install
sigil build
sigil testLicense
BSD-3-Clause
Clone
$ git clone https://codeberg.org/sigil/sigil-websocket
Releases
v0.10.13 — latest by version, released 8 Sep 2026
All releases — 16 tags in this repository.
Source
One page per file, and every line has a permalink.
Recent commitsAtom
8 Sepcommit
7 Sepcommit
4 Sepcommit
4 Sepcommit
4 Sepcommit
4 Sepcommit
4 Sepcommit
4 Sepcommit
4 Sepcommit
3 Sepcommit
3 Sepcommit
Relock: record the >= pin form
6aed2700
3 Sepcommit
3 Sepcommit
3 Sepcommit
2 Sepcommit
572a8fc7
2 Sepcommit
1 Sepcommit
Release sigil-websocket 0.10.8
be7e261e
1 Sepcommit
1 Sepcommit
The last 20 commits keep a page here. Everything older lives in the clone.