https://github.com/facebook/lexical

テキストエディタを作るためのJavaScriptフレームワーク。 エディタの状態をdouble-bufferingで管理している。 状態の変更をdiff/patchで表示に反映させる。 またcontentEditableを使っているが、外部からの変更をMutationObserverで監視し、エディタの状態を更新している。