Real-time, collaborative Markdown editor with end-to-end encryption
Here's a sample document: <a href="https://extensions.standardnotes.org/collab/doc/741ec80a-3667-46d4-b94d-6621fc2bf265#key=5e2b16147d1b344628b0e1eeb57219c97b4099d918ae63549685dbe00a2ea548" rel="nofollow">https://extensions.standardnotes.org/collab/doc/741ec80a-366...</a><p>Source is available here: <a href="https://github.com/standardnotes/collab-editor" rel="nofollow">https://github.com/standardnotes/collab-editor</a><p>The editor relies on an impressive client-side library called ChainPad, which uses blockchains as inspiration for determining the authoritative document after conflicts or many simultaneous edits. Typically operational transformation algorithms and systems to manage conflicts are handled by the server, precluding the possibility for end-to-end encryption.<p>However, ChainPad runs completely on the client-side, and is oblivious to the underlying text, thus allowing us to encrypt text client-side before broadcasting to other participants and the broadcast server. This is the first major effort I've seen for a real time client-side collaboration algorithm, and its use of a blockchain type structure is ingenious.<p>More info on ChainPad here: <a href="https://github.com/xwiki-contrib/chainpad" rel="nofollow">https://github.com/xwiki-contrib/chainpad</a>