Hacker News new | ask | show | jobs
by cyborgx7 2566 days ago
My Bachelor Thesis was implementing an operational transformation algorithm for tree structures (JSON objects) and evaluate it. Always thought about going back to it and build it into a usable application.
2 comments

You may find ShareDB[1] interesting – it's a library that does exactly that.

>ShareDB is a realtime database backend based on Operational Transformation (OT) of JSON documents. It is the realtime backend for the DerbyJS web application framework.

And now a selfplug:

We're using ShareDB to create collaborative DOM in Webstrates[2]. The tl;dr is that every DOM change you make gets synchronized to all other connected clients and the document (including full version history of every single DOM change) gets saved.

Creating a collaborative editor in Webstrates is a simple as creating a new webstrate[3], opening Devtools and adding `contenteditable` to the body element.

[1] https://github.com/share/sharedb, [2] https://github.com/Webstrates/Webstrates, [3] https://demo.webstrates.net/frontpage/

I think you would find willing collaborators! <3

Cool thesis. Pretty significant job :)

The algorithm already existed I just implemented it in js with a node server.
Still! :)