wysihtml
wysihtml is an extended and less strict approach on xing/wysihtml5 open source rich text editor. The code is library agnostic and has all dependencies bundled, no jQuery, Prototype or similar is required. The currently bundled dependencies are rangy.js (including textrange and selectionsaverestore modules) and base.js. This project is supported by Voog. It’s an open source, community developed wysiwyg html rich text editor. Any web developer can grab it and use it in her projects. Fast and lightweight, auto-linking of urls as-you-type, valid, semantic HTML5 (even when pasting from Word), no iframes required, no jQuery required, and it's modular, so you can add your own tools. Object namespace is now wysihtyml (was previously wysihtml5). This change includes all classnames and event names. The default toolbar is separated to independent module (wysihtml.toolbar.js) and must be added separately if used.
Learn more
Squire
Squire is an HTML5 rich text editor, which provides powerful cross-browser normalisation, whilst being supremely lightweight and flexible. It is built for the present and the future, and as such does not support truly ancient browsers. It should work fine back to around Opera 10, Firefox 3.5, Safari 4, Chrome 9 and IE8. Unlike other HTML5 rich text editors, Squire was written as a component for writing documents (emails, essays, etc.), not doing wysiwyg websites. If you are looking for support for inserting form controls or flash components or the like, you'll need to look elsewhere. However for many purposes, Squire may be just what you need, providing the power without the bloat.
Learn more
BlockNote
BlockNote is an open source, block-based rich text editor for React that offers a polished, Notion-style user experience with minimal setup. It comes with built-in UI components like menus and toolbars, which are fully customizable. It supports drag-and-drop functionality, allowing users to organize content into blocks that can be nested or rearranged. Developers can extend the editor with custom blocks, schemas, and plugins, benefiting from first-class TypeScript support for type safety and autocompletion. BlockNote enables real-time collaboration using Yjs, with support for providers like Liveblocks and PartyKit, allowing multiple users to edit documents simultaneously. It also supports theming, markdown, and HTML conversion, and can be used with vanilla JavaScript for non-React projects. Built on top of ProseMirror and TipTap, BlockNote simplifies the process of adding a rich text editor to applications, eliminating the need to build interface elements from scratch.
Learn more
Draft.js
We provide the building blocks to enable the creation of a broad variety of rich text composition experiences, from basic text styles to embedded media. Draft.js fits seamlessly into React applications, abstracting away the details of rendering, selection, and input behavior with a familiar declarative API. The Draft.js model is built with immutable-js, offering an API with functional state updates and aggressively leveraging data persistence for scalable memory usage. Draft.js is a framework for building rich text editors in React, powered by an immutable model and abstracting over cross-browser differences. Draft.js allows you to build any type of rich text input, whether you're only looking to support a few inline text styles or building a complex text editor for composing long-form articles. Draft.js is distributed via npm. It depends on React and React DOM which must also be installed.
Learn more