Based on our record, Thymer should be more popular than Automerge. It has been mentiond 14 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.
If you plan to build production-grade CRDT-based software and don’t want to build every piece of it by hand, I recommend Automerge as a library for handling all your CRDT needs, but it’s always good to look under the hood to build intuition and understanding for the underlying concepts. - Source: dev.to / 3 months ago
Take a look at https://automerge.org/ and the stack those folks are building. You're exactly right that it's a difficult balance (specifically the trick is proving commutativity for the domain-specific data of your application). But automerge (and then https://github.com/inkandswitch/peritext) show it's at least possible. Good stuff. - Source: Hacker News / 11 months ago
[1]. Hopefully it's going to be useful for others working from their todo.txt/thoughts.txt! [1] https://thymer.com. - Source: Hacker News / 4 months ago
We're working on an app [1] which needs to deal with this, but in general it also makes git less suitable for things like outliners or other collaborative text editors where people can work on lists, tables, and so on (structured data basically). [1] https://thymer.com/. - Source: Hacker News / 4 months ago
Nice outline of the various techniques. We've built something in-between the operation-based and delta-based approaches for our offline-first multiplayer "IDE for notes/tasks" [1]. In our case we have a central server which periodically creates snapshots. Although we don't do that right now, if needed, it could delete older operations from the log for space reasons. Except for the fact that replicas encrypt their... - Source: Hacker News / 5 months ago
Right, there are quite some collaborative applications for which a hybrid approach is useful. We're building a collaborative editor (https://thymer.com) for example, where the underlying data structure is also a tree (as the text documents also support outliner-like features, so a flat list of characters/lines isn't enough). To avoid tree conflicts, insert and move operations look more like OT than CRDT however,... - Source: Hacker News / 8 months ago
We’re building an "IDE for notes/tasks" [1], so as an editor of sorts, UI snappiness matters a lot for us too. The approach we’re taking is to basically split up the app in two parts (we refer to these parts as "frontend" and "backend", but they are both on the client). The frontend does all the rendering for the editor, which we want to stay within the frame budget. That's why we offload all data synchronization... - Source: Hacker News / 10 months ago
Yjs - A CRDT framework with a powerful abstraction of shared data, Shared data types for building collaborative software
PouchDB - Open-source JavaScript database inspired by Apache CouchDB that's designed to run well within the browser
organice - An implementation of Org-mode for web browsers (mobile and desktop).
GUN - Self-hosted Firebase.
Flat Habits - A habit tracker that's mindful of your time, data, and privacy
RxDB - A fast, offline-first, reactive Database for JavaScript Applications