Lexical

 
Lexical is comprised of editor instances that each attach to a single content editable element. A set of editor states represent the current and pending states of the editor at any given time.
It's super easy to get started with Lexical in any environment. Lexical is framework agnostic, but provides a set of bindings for React to help you get off the ground even quicker. After the initial setup, delightfully ergonomic APIs make building custom functionality straightforward and downright fun!