y-connector-dat
This is the amazing marriage of y.js and dat (specifically the dat API provided by the beaker browser).
Details
dat is a private peer-to-peer gossip protocol that deals with versioned archives of files and directories.
y.js
is a framework for building applications with CRDTs. Centralized services like Google Docs and Etherpad use OT, peer-to-peer applications use CRDT.
y-connector-dat
is a transport abstraction layer for y.js that speaks with beaker's dat API.
Specifically, it embraces dat's concept of personal versioned archives and forking: Collaborator B forks the original archive, after having been sent its id. Then they send the id of their fork to the original author A, and A can choose to add them to their archive using the collaborator's id. Now, the archives can communicate by watching each other and A and B can collaborate using y.js. They can even choose to go seperate ways and remove each other from their rosters to stop receiving changes from each other.
Install
npm install --save y-connector-dat
Usage
//...Y// ... // To create a new document / dat archive
Legal
(c) 2017 Marcel Klehr
MPL License