WebRTC is the standard that makes browser-to-browser video calls possible. It defines three pieces: a media pipeline (RTCPeerConnection) that encodes and transports audio and video, an SDP-based negotiation format so both peers agree on codecs and parameters, and an ICE machinery that picks a network path between them.
The thing that catches most engineers off guard is that WebRTC needs a signaling channel of your choosing — a server you build, not one the browser provides — to exchange those SDP offers and ICE candidates before any media flows. The peer-to-peer connection is established without a server, but the introduction is not.
Inside ShareCode, WebRTC handles the voice and video stream that runs alongside the editor during pair-programming sessions. The data layer that synchronises the actual code is a separate transport on top of CRDTs — the two systems share an architectural pattern (peers, awareness, late joiners) but use different protocols underneath.