- Spring
- MongoDB
- Netty
- Vaadin
- Operational Transformation
- Thread-safe operation queue: condition variable
Back-end, exchange client local operations
Editor, send local operations to server & receive other clients operations from server. Apply operational transformation between lcoal operations with received ones & render merged text to editor
Open two client editors. Input text on the left.
Wait a second, right editor will be synchronized.
Input something into left editor.
Wait a second, right editor will be synchronized again.
Insert into arbitrary positon on right.
Left editor will also be synchronized in a second.