I tried to design my first rich text editor making use of Facebook's new open-source text editor framework - Lexical.
https://faris-abuali.github.io/Lexical-Rich-Text-Editor/
Lexical is an extensible JavaScript web text-editor framework with an emphasis on reliability, accessibility, and performance. Lexical aims to provide a best-in-class developer experience, so you can easily prototype and build features with confidence. Combined with a highly extensible architecture, Lexical allows developers to create unique text editing experiences that scale in size and functionality.
For documentation and more information about Lexical, be sure to visit the Lexical website.
Here are some examples of what you can do with Lexical:
Lexical Playground Plain text sandbox Rich text sandbox
read more on Facebook's Lexical repo: https://github.com/facebook/lexical