Real-Time Multi-User State Management for the Collaborative Web
summary
An app called Super Duper Fluidy demonstrates a server‑authoritative, optimistic state model that uses webrtc data channels for input and a reliable channel for state, plus a websocket signaling channel. It implements rollback netcode (replay consistency): clients apply inputs locally, buffer pending actions, and the server acknowledges or sends full sync snapshots; clients roll back, apply settled updates, then replay pending inputs. Code is on GitHub and the demo runs across phones, tablets, and browsers.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 0:50Overview
- 3:19WebRTC
- 5:08Topologies
- 11:12Perfect Negotiation
- 12:49Websockets
- 16:13WebRTC Data Channels
- 18:11Rollback Netcode
- 22:05How does it work
- 23:33When things go wrong
- 25:19Resources
- 27:09Libraries
- 29:47Client side
- 31:21Negotiation logic
- 33:55Open data channels
- 35:47State reducer
- 40:50Future of WebRTC
related talks
44mSeamless mobile real-time communication with WebRTC
55mReal Time Data
28mDynamic UI at the Edge
24mBuilding Realtime Singlepage Apps
30mWebSockets: The Real-Time Avengers
44mSeamless mobile real-time communication with WebRTC
22mEvery Node.js app should have real-time collab features
38mReal-time Communication on Mobile
