Live data sharing with CRDTs

You are more than welcome and thanks for contributing.

So far we have an Lseq and crdt-tree that allows us to provide a rich API (we hope). @bochaco and @danda are quite involved there. We are moving on byzantine CRDT’s as well (bft-crdts) which allows us to operate in the most hostile of environments.

We have not set up collaborative editing yet, but there is a neat lib for this GitHub - yjs/yjs: Shared data types for building collaborative software and talk of it moving to rust. It makes perfect sense to work that into the mix for sure. We just need to work out the intricacies of holding the data in a way that works well for the network.

It’s all exciting stuff as we use CRDT to allow partition management (cap theory) and even better we have offline capabilities that would otherwise be closed to us if we were using a strict order consensus-based algorithm (close shave).

The links to that and SOLID though are almost completely missing right now. Your timing is perfect and while we are in a bit of a flurry to get a testnet up right now this is an area we will be really keen to collaborate as I feel Solid + CRDT + secured network (no servers) is the holy grail we all need right now.

22 Likes