orgzly / orgzly-android

Outliner for taking notes and managing to-do lists
https://www.orgzly.com
GNU General Public License v3.0
2.67k stars 304 forks source link

Implement CRDT-based synchronization #903

Open ligurio opened 2 years ago

ligurio commented 2 years ago

[x] I have searched for existing issues that may be the same as or related to mine.

There are CRDT and RON that allows to synchronize without conflicts. There are note and task managers like ff that uses CRDT and RON. It would be good to implement it in Orgzly, it would allow to use Orgzly independently from G.Drive and other cloud services.

nightscape commented 2 years ago

Peritext might also be interesting in that regard. It's a JS implementation of a rich-text CRDT. There's currently also some ideas floating around how to handle tables and lists. Given such a CRDT, many tools could do real-time collaboration (e.g. Orgzly with LogSeq). One could even think about having Emacs with org-mode as-a-service which adds functionality to other tools (e.g. JIRA integration) by sending CRDT patches. This would of course be possible with file-based sync as well, but the real-time aspect (if you're online) would be a game-changer.