Hacker News new | ask | show | jobs
by ethan_smith 315 days ago
Does Ethersync use CRDTs under the hood for conflict resolution, or does it implement a different approach to handle concurrent edits?
1 comments

It uses automerge [1], so I strongly assume they use CRDTs.

[1] https://automerge.org/

Yep! Daemons on multiple computers speak the Automerge sync protocol. Between daemon and editors, we use a "one-sided operational transform" approach, in an attempt to offload as much work as possible into the daemon (and out of the plugin). If you're interested, you can learn more about Ethersync's architecture in the documentation: https://ethersync.github.io/ethersync/

In addition, we keep a directory of "Architectural Design Decisions" here, which go more into depth: https://github.com/ethersync/ethersync/tree/main/docs/decisi...

There's also a 10-minute talk from this year's FOSDEM: https://fosdem.org/2025/schedule/event/fosdem-2025-4890-ethe...