はじめに フロントエンドエンジニアなら一度は憧れる共同編集。ただ websocket や webrtc のような stateful な通信が必須であるために、手軽なものとは言えない。できればサーバーレスでデータベースなども使わずに実装したい。そんなときに CloudflareWorkers の DurableObjects が役に立つ。 CloudflareWorkers の Durable Objects には Hibernation API と transaction storage があり、websocket の接続とデータの永続化ができる機能がある。これが共同編集と非常に相性が良い。 またスケーリングの面[1]から見ても、優れているのではないかと思っている。 しかし、共同編集ライブラリとして有名な Yjs は Node.js での実装が前提であり、そのままでは Cloudflare