For an open source rich text editor library, the strongest matches are tinymce/tinymce (TinyMCE is a full-featured JavaScript WYSIWYG editor with a), jaredreich/pell (Pell is a lightweight, dependency-free WYSIWYG rich text editor) and jpuri/react-draft-wysiwyg (This is a DraftJS-based WYSIWYG rich text editor component). slab/quill and mycolorway/simditor round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Find the best open-source rich text editors for your project. Compare top-rated libraries by features, activity, and ease of use to find the best fit.
TinyMCE is a JavaScript rich text editor and WYSIWYG HTML editor that provides a visual interface for creating and formatting content within web applications. It functions as an extensible editor framework and web content management UI, allowing users to author and style documents through a browser-based interface. The project is distinguished by a plugin-based extension system and a public API that enable the addition of custom capabilities and modifications to the visual interface. It utilizes a framework-agnostic core, providing dedicated integration for React, Vue, and Angular. The syste
TinyMCE is a full-featured JavaScript WYSIWYG editor with a visual toolbar for bold, italic, underline styling, extensive plugin support for custom formatting, built-in keyboard shortcuts, and markdown handling, making it a flagship answer for this search.
Pell is a JavaScript text editor library and browser-based rich text editor. It provides a lightweight WYSIWYG HTML editor for formatting styled text and outputting HTML directly within a web browser. The library is a dependency-free vanilla implementation that uses standard Web APIs. It allows for the definition of custom editor actions and text actions to extend the toolbar and the creation of custom visual themes to modify the editor appearance. The editor covers rich text editing and browser-based text formatting, including the application of bold, italic, headings, and lists. It also su
Pell is a lightweight, dependency-free WYSIWYG rich text editor that provides toolbar formatting toggles like bold and italic, along with support for custom actions, fitting your need for a web-based editor with a formatting toolbar — though it lacks explicit markdown support and keyboard shortcuts.
This project is a rich text editor component for React applications that provides a visual interface for composing and formatting content. It functions as a DraftJS-based WYSIWYG editor, allowing users to create structured documents with inline styles and block types. The editor features a customizable toolbar interface for managing text alignment, lists, and media embeds. It includes a specialized input system for inserting emojis, hashtags, and user mentions as single deletable units. The project provides capabilities for transforming internal editor state into HTML, JSON, or Markdown form
This is a DraftJS-based WYSIWYG rich text editor component for React with a customizable toolbar that includes inline style toggles (bold, italic, underline), block types, and media embedding, and it also supports Markdown and HTML export — directly matching the need for a web-based editor with a formatting toolbar.
Quill is a modular, web-based rich text editor designed for structured content authoring. It provides a comprehensive toolkit for building tailored editing experiences, allowing developers to manage document state, handle user input, and synchronize content through a predictable, serializable data model. The editor distinguishes itself through a custom document abstraction that maps the browser DOM to a structured tree of nodes, ensuring consistent behavior across different environments. It utilizes an operational change tracking system that represents all document modifications as a sequence
Quill is a modular web-based rich text editor with a built-in toolbar for bold, italic, and underline formatting, and it supports custom plugins and keyboard shortcuts, making it an ideal foundation for a tailored WYSIWYG editing experience.
Simditor is a JavaScript-based rich text editor and WYSIWYG HTML editor designed for creating structured documents within web applications. It functions as a web-based media editor and HTML content sanitizer, allowing users to compose and format content visually. The project distinguishes itself through an integrated system for handling media and security. It features server-side image upload capabilities that support both local file selection and clipboard pasting, alongside a whitelist-based HTML markup filtering system to ensure consistent and secure output. The editor provides broad capa
Simditor is a JavaScript-based WYSIWYG rich text editor with a toolbar for common formatting toggles like bold and italic, directly matching your need for a web-based editor, though it may not include built-in markdown support.
Squire is a DOM-based rich text editor and WYSIWYG content editor that treats raw HTML as the source of truth. It functions as a system for manipulating the document object model directly to provide a visual interface for editing complex web content. The project focuses on arbitrary HTML editing, allowing the modification of any HTML content without losing original formatting. It includes tools for HTML content normalization and sanitization to ensure that raw input is cleaned and structured consistently before being rendered as editable nodes. The editor's capability surface covers inline f
Squire is a DOM-based rich text editor that supports inline formatting like bold, italic, and underline through its command system and keyboard shortcuts, fitting the need for a web-based WYSIWYG tool, though it lacks built-in markdown support and may require custom development for a pre-built toolbar.
Braft Editor is a React-based rich text editor built on Draft.js that provides a framework for content creation and formatting. It functions as a reusable UI component that allows users to compose formatted documents in a WYSIWYG interface and export the resulting content as HTML strings. The project features built-in localization support for multiple languages, including Chinese, Japanese, and Korean. It provides a modular system for extending editor functionality through plugins, custom toolbar mappings, and specialized media entities. The editor covers a broad range of content capabilitie
Braft Editor is a React-rich text editor with a WYSIWYG interface and customizable toolbar for bold, italic, and underline formatting, though evidence of Markdown support and keyboard shortcuts is not provided in the description.
Trix is a rich text editor and WYSIWYG text component designed for composing and formatting documents with inline styling and block elements. It functions as an HTML content editor that manages and sanitizes input to ensure a secure and consistent document structure, while serving as a document state manager that tracks edit history and persists serialized state. The editor integrates directly with standard HTML forms, converting rich text into data for submission. It features a configurable sanitization engine that cleanses input HTML to remove unsupported tags and mitigate security risks.
Trix is a WYSIWYG rich text editor with a toolbar for common formatting like bold and italic, which directly matches your request, though it does not include markdown support or a custom plugin system out of the box.
Trumbowyg is a lightweight JavaScript WYSIWYG editor used to create and format rich-text and HTML content directly within a web browser. It serves as a client-side tool for generating semantic HTML markup and authoring web content. The project features a modular, plugin-based architecture that allows for the addition of new formatting commands and toolbar buttons. It provides a configurable interface where the toolbar layout can be customized via a predefined array and labels can be translated through localization files. The editor covers a wide range of content manipulation capabilities, in
Trumbowyg is a lightweight JavaScript WYSIWYG editor with a configurable toolbar and plugin system that directly supports bold/italic/underline formatting, though it lacks built-in markdown support.
UEditor is a web-based WYSIWYG rich text editor and HTML content authoring tool. It functions as a DOM-based text component that allows users to create and format complex web documents through a visual interface with real-time rendering. The editor enables the creation of rich text content for web applications and content management systems. It manages document state using HTML strings, facilitating the serialization and transfer of data between the browser and server. The system provides capabilities for managing editor content and configuring behavioral parameters through initialization se
UEditor is a full-featured web-based WYSIWYG rich text editor with a formatting toolbar for bold, italic, underline and other common options, which directly matches your requirement for a rich text editor; however, evidence for markdown support and keyboard shortcuts is not clear from the description, so it fits the category but may lack some of the listed features.
This project is a React-based rich text editor designed for authoring and managing markdown documents through a visual interface. It functions as a modular framework that renders markdown in real-time, allowing users to create structured content without manual syntax entry. The editor is built on a plugin-based architecture that enables developers to extend functionality while maintaining minimal application bundle sizes. It provides a comprehensive command interface for programmatic content manipulation and utilizes reactive state management to ensure the visual editing surface remains synch
It is a React-based rich text editor component with markdown support, built on Lexical, which provides toolbar formatting toggles, custom plugins, and keyboard shortcuts — exactly the kind of WYSIWYG editor this search targets.
wysihtml5 is an HTML5 rich text editor, HTML sanitizer, and content normalization tool. It is designed to generate semantic and valid HTML5 markup while preventing the use of invalid tags and inline styles. The project distinguishes itself through a content normalization pipeline that converts pasted external content into a consistent document structure. It employs a security layer using sandboxed iframes to parse and clean external content to prevent vulnerabilities. The editor provides capabilities for semantic web authoring by replacing styling tags with standardized class names. It also
wysihtml5 is a genuine HTML5 rich text editor that focuses on semantic markup and content sanitization, making it a valid rich text editor though its emphasis is on clean HTML rather than the explicit formatting toolbar and feature set you're looking for.
Yoopta-Editor is a headless framework for building customizable block-based rich text editors. It utilizes a JSON-based document engine to manage editor state and provides a WYSIWYG interface for creating structured documents. The system separates core document logic from the visual layer, allowing for complete customization of the user interface. The framework is designed for real-time collaborative editing, featuring a synchronization engine with conflict resolution and remote cursor presence tracking. It offers a highly extensible plugin system that allows developers to define new content
Yoopta-Editor is a headless rich text framework that provides a WYSIWYG interface, a plugin system for custom formatting, and likely supports toolbar formatting toggles (bold, italic, underline) out of the box, making it a solid fit for building a web-based editor with the requested features.
| Repository | Stars | Sprache | Lizenz | Letzter Push |
|---|---|---|---|---|
| tinymce/tinymce | 16.2K | TypeScript | NOASSERTION | |
| jaredreich/pell | 12.1K | JavaScript | MIT | |
| jpuri/react-draft-wysiwyg | 6.5K | JavaScript | MIT | |
| slab/quill | 47.2K | TypeScript | BSD-3-Clause | |
| mycolorway/simditor | 5K | JavaScript | NOASSERTION | |
| neilj/squire | 4.9K | TypeScript | MIT | |
| margox/braft-editor | 4.6K | JavaScript | MIT | |
| basecamp/trix | 20K | JavaScript | MIT | |
| alex-d/trumbowyg | 4.1K | JavaScript | MIT | |
| fex-team/ueditor | 6.8K | JavaScript | MIT |