Peerix v0.3 Released
Peerix v0.3 is now available. This release introduces a new SSE signaling driver, strengthens secure defaults, improves signaling efficiency, and updates compatibility and licensing for wider adoption.
Highlights
New SseDriver for signaling
Peerix now includes SseDriver for signaling over Server-Sent Events (SSE).
The SSE driver is a browser-friendly option for production signaling: incoming updates are delivered through a single SSE stream, while outbound signaling messages are sent via standard HTTP POST requests.
import { Peer, SseDriver } from 'peerix';
const driver = new SseDriver({
url: 'http://localhost:8080/api/sse',
withCredentials: false,
});
const peer = new Peer({ driver });
await peer.join({ room: 'my-room' });See the SSE Driver docs for full usage and a server example.
Lower signaling overhead with ICE candidate debouncing
Peerix now debounces ICE candidate signaling. This reduces message bursts during negotiation and lowers transport load, especially in rooms where multiple peers join around the same time.
More secure defaults
v0.3 improves signaling security and identity defaults:
- Signaling encryption now uses derived keys instead of manually supplied secret keys.
- Signaling encryption is enabled by default.
- Peer IDs now use compressed public keys.
signalingHashinghas been renamed tonamespaceHashingfor clarity and consistency.
These updates make secure setups easier out of the box while preserving flexibility for advanced deployments.
Modern runtime baseline
This release raises the minimum build target to ES2020 to support modern JavaScript features such as BigInt.
Updated licensing
Peerix is now licensed under Apache-2.0, replacing GPL-3.0. This makes adoption easier for both open-source and commercial projects.
Upgrade notes
When upgrading to v0.3, review the following:
- If you used manually managed signaling secret keys, migrate to the new derived-key flow.
- If you configured
signalingHashing, rename it tonamespaceHashing. - If your environment depends on older JavaScript targets, ensure your toolchain supports
ES2020. - If you need cross-browser/server signaling without WebSockets, consider moving to
SseDriver.
Thank you
Thanks to everyone testing Peerix and sharing feedback. Your input continues to improve reliability, performance, and developer experience.
More improvements are coming soon across core functionality, drivers, examples, and documentation.
