co-editing Collaborative editing demo use Slate.js and Nestjs Features Slate: rich text editors socket.io: real time connection automerge: JSON CRDT algorithm Research resources cudr/slate-collaborative FEX: 实时协同编辑的实现 automerge