Your browser owns your devices
Camera, microphone, display capture, device selection, and media processing stay at the client boundary.
Browser-first · peer-to-peer by default
Verge keeps small-room conferencing close to the people in the call: camera, audio, screen sharing, chat, and verified file exchange over WebRTC. Production rooms add signed, expiring invitations and short-lived TURN credentials without moving conference media through the signaling plane.
Architecture
Verge separates rendezvous from the actual conversation. Signaling helps peers find each other; WebRTC carries media and data. Production rooms authenticate entry and recover bounded signaling interruptions without moving conference media into the control plane.
Camera, microphone, display capture, device selection, and media processing stay at the client boundary.
The control plane authenticates room entry, issues time-limited TURN credentials, tracks ephemeral membership, and forwards SDP/ICE messages.
SRTP handles media and ordered data channels carry chat and files. A topology-neutral contract leaves room for a future SFU.
Everything in the room
Verge keeps the capability set explicit and browser-owned wherever the platform already provides the primitive.
Standards-based WebRTC capture and negotiated media for small-room conferencing.
Share a screen, window, or tab and switch back to camera without rebuilding the room.
Peer-to-peer text chat and chunked, SHA-256 verified file exchange.
Speech mode requests echo cancellation and noise suppression; original-audio mode preserves stereo.
Peers apply a shared preference policy only to codecs the current browser actually exposes.
Signed, expiring invitations gate production joins while media and app data stay on WebRTC paths.
Media policy
Verge starts from the browser's actual WebRTC capabilities and applies the same preference policy shown here before negotiation. Unsupported formats are skipped; the exact result remains a runtime property.
Open source · self-hostable
The browser client and signaling service live in one pnpm workspace. GitHub Pages hosts this static introduction and onboarding layer; signaling remains a separate runtime service by design.