Skip to main content

The Braid Protocol: Synchronization for HTTP

Document Type Replaced Internet-Draft (individual)
Authors Michael Toomim , Rafie Walker
Last updated 2019-07-08
Replaced by draft-toomim-httpbis-braid-http
Stream (None)
Intended RFC status (None)
Expired & archived
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state Replaced by draft-toomim-httpbis-braid-http
Telechat date (None)
Responsible AD (None)
Send notices to (None)

This Internet-Draft is no longer active. A copy of the expired Internet-Draft is available in these formats:


Braid is a proposal for a new version of HTTP that transforms it from a state *transfer* protocol into a state *synchronization* protocol. Braid puts the power of Operational Transform and CRDTs onto the web, improving network performance and robustness, and enabling peer-to-peer web applications. At the same time, Braid creates an open standard for the dynamic internal state of websites. Programmers can access state uniformly, whether local or on another website. This creates a separation of UI from State, and allows any user to edit or choose their own UI for any website's state. We have a working prototype of the Braid, and have deployed it with production websites. This memo describes the protocol, how it differs from prior versions of HTTP, and a plan to deploy it in a backwards-compatible way, where web developers can opt into the new synchronization features without breaking the rest of the web.


Michael Toomim
Rafie Walker

(Note: The e-mail addresses provided for the authors of this Internet-Draft may no longer be valid.)