{"repo":"wzhudev/reverse-linear-sync-engine","free":true,"listed":false,"github":"https://github.com/wzhudev/reverse-linear-sync-engine","clone":"git clone https://github.com/wzhudev/reverse-linear-sync-engine.git","description":"A reverse engineering of Linear's sync engine. Endorsed by Linear CTO.","language":"JavaScript","stars":2137,"topics":["data-sync","reverse-engineering","linear","collaboration","sync-engine"],"license":null,"category":"security-tools","readme_excerpt":"Reverse Engineering Linear's Sync Engine: A Detailed Study This is a pretty awesome (and correct) write-up of our sync engine. (link) ...probably the best documentation that exists - internally or externally. (link) ...documentation that is correct and more complete than what Linear publishes internally. (link) -- Tuomas Artman (Co-founder and CTO of Linear) [!IMPORTANT] Check out the SUMMARY My friends found this too long, so I wrote a summary highlighting the key points—making it a 10-minute read. If you're only interested in the main ideas or want to skip the implementation details, just read the summary. Join in discussion. I work on collaborative softwares, focusing on rich text editors and spreadsheets. Collaboration engines , also known as data sync engines , play a pivotal role in enhancing user experience in these softwares. They enable real-time, simultaneous edits on the same file while offering features like offline availability and file history. Typically, engineers use Operational Transformation (OT) or Conflict-free Replicated Data Types (CRDTs) to build sync engines. While these technologies are effective for editors and spreadsheets, they may not be ideal for other types of applications. Here's why. OT is widely adopted but notorious for its complexity. This complexity stems from the need to account for diverse data models and operation sets across different applications, which requires significant effort to implement correct operations and transformation fun","default_branch":null,"files":null,"tree":[],"storefront":"/r/wzhudev","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/wzhudev/reverse-linear-sync-engine/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}