Kollaborative Textbearbeitung ohne CRDTs oder OT

2025-05-21

Dieser Blogbeitrag beschreibt einen neuen Ansatz zur kollaborativen Textbearbeitung, der die Komplexität von konfliktfreien replizierten Datentypen (CRDTs) und Operational Transformation (OT) vermeidet. Die Kernidee besteht darin, jedem Zeichen eine global eindeutige ID zuzuweisen und "einfügen nach"-Operationen zu verwenden. Der Server aktualisiert seinen Zustand wörtlich basierend auf diesen Operationen, während Clients Server-Rekonziliation für optimistische lokale Aktualisierungen verwenden. Dieser Ansatz ist einfacher und flexibler als CRDT/OT und ermöglicht benutzerdefinierte Operationen und Funktionen wie die Behandlung von Rich Text und Zugriffskontrollen. Eine ergänzende npm-Bibliothek, Articulated, unterstützt die Implementierung.