Skip to content

beryl

Type-safe real-time channels and presence for Gleam, targeting the Erlang (BEAM) runtime.

Real-time channels

Define channels with typed callbacks and pattern-matched topics. Join, leave, and broadcast with compile-time guarantees on socket state.

Presence tracking

Track who's online with a CRDT-backed presence system. Add-wins observed-remove set resolves conflicts automatically across distributed nodes.

PubSub on OTP

Distributed publish/subscribe powered by Erlang's pg process groups. Works across cluster nodes with zero configuration.

Phoenix-compatible wire protocol

JSON array wire format compatible with Phoenix client libraries. First-class WebSocket support via Mist integration.