FoxStudio
WorksLabStudioTeamJournalContact
FR·EN·IT

FoxStudio

Subsidiary of FoxCase.

Navigate

  • Works
  • Lab
  • Studio
  • Team
  • Journal

Contact

  • hello@foxstudio.fr
  • Cannes, FR
  • Ombrys

Legal

  • Mentions
  • Privacy
  • Footprint

Cannes, FR · GMT+1MEASURING…v0.1.0
◂ Back to journal

2026-02-02 · tooling · 10 min

P2P CRDT sync: what works, what breaks

Six months on exp_006. WebRTC + Yjs with no authority server, and the gotchas we hadn't anticipated.

The idea: why have an authority server syncing a collaborative document when WebRTC allows direct peer-to-peer? We built the experiment on Yjs, which resolves conflicts deterministically, and routed all state through a DataChannel mesh.

What works: synchronous collaboration with 2-3 users on the same local network. Sub-50 ms latency, no server to pay for, no central failure point. For a creative-studio use case (designers + devs on the same brief), it's clean.

What breaks: NAT traversal, peer hot-reload, and especially history. Without a server, how does a newcomer catch up on the document if all previous peers are disconnected? We ended up adding a passive signaling server that hosts a snapshot — so not quite peer-to-peer anymore, but not quite client-server either.