For an open source rich text editor component, the strongest matches are typecellos/blocknote (BlockNote is a modular, block-based rich text editor built), heyscrumpy/tiptap (Tiptap is a headless, block-based rich text editor framework) and madebymany/sir-trevor-js (This is a modular, block-based rich text editor that). udecode/plate and codex-team/editor.js round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Discover the best BlockNote alternatives for your project. Compare top-rated open-source rich text editors by features and activity to find the best fit.
BlockNote is a block-based rich text editor and a real-time collaborative workspace. It uses a JSON-based data model to organize content into draggable, nestable blocks rather than a single flat document. The system functions as a high-level interface built on ProseMirror that abstracts document state into discrete, manipulatable content blocks. The project serves as a framework for integrating large language models into document editors, enabling context-aware text generation and AI-driven workflows. It also acts as a document export engine capable of converting structured block data into fo
BlockNote is a modular, block-based rich text editor built on ProseMirror and Tiptap that provides a React-based framework for creating draggable, nestable content blocks with native JSON output.
Tiptap is a headless rich text editor framework and extensible WYSIWYG framework designed for building custom text editors. It functions as a high-level wrapper around the ProseMirror toolkit, separating core editing logic and state management from the user interface. The framework enables real-time collaborative editing through a synchronization system using conflict-free replicated data types. It also supports the integration of AI content generation to provide automated suggestions and content refinement directly within the editor. The system utilizes a plugin-based extension architecture
Tiptap is a headless, block-based rich text editor framework that provides deep React integration, JSON-based document output, and a highly extensible plugin architecture, making it a comprehensive solution for building custom editors.
sir-trevor-js is a modular block-based rich text editor and content framework. It functions as a customizable WYSIWYG editor that transforms visual input into a structured JSON content framework, storing documents as a tree of independent data blocks rather than flat HTML strings. The system is distinguished by its focus on structured content management, allowing users to define custom block types, set block constraints, and implement schema-based content validation. It provides a plugin system for extending the editor with specialized content types and uses event-driven lifecycle hooks to ex
This is a modular, block-based rich text editor that outputs structured JSON and supports custom extensions, making it a direct fit for your requirements despite lacking native React-specific components.
Plate is a headless editor toolkit and framework designed for building custom rich text editing experiences. It provides a modular architecture that relies on a plugin-based system to manage document models, schema-driven node definitions, and state updates, allowing developers to assemble tailored content creation environments. The project distinguishes itself through a source-code injection pattern, where pre-built user interface templates and components are copied directly into the local project codebase. This approach ensures that developers maintain full control over the styling, markup,
Plate is a modular, block-based rich text editor framework built on Slate that provides deep React integration, JSON-based data structures, and a highly customizable plugin system for building tailored editing experiences.
Editor.js is a block-style rich text editor that organizes document content into an ordered array of independent, modular data objects. By replacing monolithic HTML strings with a structured, machine-readable JSON format, it decouples the content creation process from the final presentation layer. The editor functions as a browser-based orchestration layer that manages user input, focus, and state synchronization across individual blocks. Its architecture is built on a plugin-driven system where external modules register themselves to handle specific content types, providing custom rendering
Editor.js is a block-based rich text editor that outputs structured JSON and uses a modular, plugin-driven architecture, making it a perfect fit for integrating into web applications.
BlockSuite is a collaborative block editor framework built on a hierarchical block tree data model with CRDT-based state synchronization for real-time multi-user editing. It provides an extensible block component system, allowing developers to define custom block types through declarative schemas, services, and rendering components. The editor is packaged as cross-framework web components, making it embeddable in any JavaScript environment. The framework distinguishes itself with a command-driven editing pipeline that composes type-safe editing actions with dynamic context sharing and control
BlockSuite is a modular, block-based editor framework that provides a hierarchical data model, extensible component system, and JSON-compatible state management, making it a comprehensive solution for building custom rich text editors in web applications.
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 modular, block-based rich text editor framework built for React that uses a JSON-based document engine and supports extensive customization through its plugin system.
react-page is a browser-based visual content editor and schema-driven page builder developed with React and TypeScript. It provides a framework for creating web pages through a what-you-see-is-what-you-get interface, utilizing a responsive twelve-column grid engine for arranging elements via drag-and-drop manipulation. The system features a plugin-based architecture that allows for the integration of custom components. These components are managed through a schema-driven system that automatically generates data entry forms based on predefined property definitions, separating the rendering vie
This is a modular, block-based visual editor built specifically for React that supports custom plugin extensions, drag-and-drop layout management, and schema-driven data output.
Tiptap is a headless, modular framework designed for building custom rich-text editors. It provides a developer-focused abstraction layer over a structured document model, allowing for full control over the underlying schema through a plugin-based architecture. By separating document state management from the user interface, it enables the creation of tailored editing experiences that remain framework-agnostic. The project distinguishes itself through a robust collaborative engine that supports real-time multi-user editing, conflict resolution, and presence tracking. It integrates artificial
Tiptap is a headless, block-based rich text editor framework that offers deep React integration, JSON-based document output, and a highly modular plugin system for custom extensions.
Draft-js is a framework for building customizable rich text editors within React applications. It serves as a state manager for document content and metadata, providing a system to handle text ranges, atomic blocks, and the conversion of HTML strings into structured document formats. The framework enables the creation of interactive editing interfaces that support custom inline styling and configurable block rendering. It includes tools for managing rich media document handling, allowing the integration of non-editable content and metadata into a text stream. The project covers a broad range
Draft.js is a foundational framework for building block-based rich text editors in React that provides the necessary state management and structured document model, though it requires significant custom implementation to achieve a full drag-and-drop interface.
Lexical is a modular rich text editor framework used to build extensible web-based editors. It functions as a state-driven content editor that maintains a serializable, immutable snapshot of document content to ensure predictable updates and accessibility compliance. The framework is distinguished by its plugin-based architecture and customizable node framework, which allow developers to extend editor behavior through specialized content nodes and encapsulated runtime logic. It also includes a collaborative editing engine capable of synchronizing document state across multiple clients in real
Lexical is a modular, block-based rich text editor framework that provides first-class React integration, JSON serialization, and a highly extensible plugin architecture for building custom web-based editors.
This project is a customizable browser text editor and a schema-driven document framework designed for building React-based WYSIWYG content editors. It replaces standard text areas with a system that represents content as a structured data tree rather than flat HTML, allowing for precise manipulation and validation of documents. The framework serves as an extensible content management interface and a TypeScript UI component library. It enables the development of specialized authoring tools through a plugin system and the use of strongly typed building blocks to ensure consistency across docum
This is a modular, schema-driven framework specifically designed for building block-based, React-integrated rich text editors with structured JSON output and a robust plugin system.
CKEditor 5 is a modular rich text editor framework and JavaScript UI component used to build customizable visual editors. It serves as a system for generating HTML or Markdown content, providing both full rich-text editor components and restricted inline editor components for web applications. The framework includes a collaborative editing engine for real-time simultaneous editing, change tracking, and threaded commenting. It features an AI text assistant for polishing, rewriting, and generating content, as well as a document export engine that transforms rich text into PDF and Word files. T
CKEditor 5 is a modular, block-based rich text editor framework that provides extensive customization, React integration, and structured JSON data output, making it a comprehensive solution for building complex editing interfaces.
Quill is a JavaScript rich text editor library used to build WYSIWYG web editors. It serves as a modular editor framework for creating browser-based document authoring tools with a customizable interface and document model. The system functions as a modular content editor, providing a plugin system to extend formatting and embedding capabilities. This allows for the development of specialized text editors through custom modules and formatting plugins. The library covers the implementation of visual content creation interfaces that render formatted text and media in real time. Its primary cap
Quill is a modular, extensible rich text editor framework that provides the necessary plugin architecture for building custom document authoring tools, though it uses a Delta-based document model rather than a strictly block-based architecture.
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
This is a React-based rich text editor that provides a modular, plugin-driven architecture for web applications, though it outputs HTML rather than the JSON format typically associated with block-based editors.
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, extensible rich text editor that provides a structured document model and plugin architecture, though it uses a Delta format rather than a strictly block-based node architecture.
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 mature, extensible rich text editor framework that offers React integration and a robust plugin architecture, though it is primarily a traditional WYSIWYG editor rather than a block-based editor by default.
This project is a modular rich text editing component for React applications, built on the ProseMirror framework. It provides a visual interface for composing and formatting content using markdown, while maintaining a structured document model that serializes back into clean markdown code. The editor is designed for high extensibility, allowing developers to inject custom behaviors and formatting commands through a plugin-driven architecture. It supports granular control over the editing environment, including the ability to override default styles, localize interface text, and configure spec
This is a modular, React-based rich text editor built on ProseMirror that supports custom extensions and a plugin-driven architecture, making it a strong fit for developers needing a customizable editing component.
This project provides a React component wrapper for a block-based rich text editor. It enables the integration of a structured content editing environment into React applications, organizing document data into modular, independent blocks for flexible manipulation and storage. The component manages the editor instance lifecycle and facilitates state synchronization, allowing developers to use either controlled or uncontrolled data patterns. It supports extensibility through the registration of external plugins, enabling the addition of specialized formatting tools, media handling, and custom b
This is a React wrapper for the Editor.js framework, providing the requested block-based architecture and JSON output in a format ready for integration into web applications.
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
This is a modular, React-based rich text editor framework that uses a plugin-based architecture to manage content, making it a strong fit for developers needing a customizable, block-oriented editing experience.
React rich text editor built using Draft.js. Similar to Facebook Notes editor
This is a React-based rich text editor that leverages Draft.js to provide a block-based editing experience, making it a suitable choice for integrating structured text editing into your web application.
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 React-based rich text editor that supports block-level styling and JSON output, providing a solid foundation for building document-authoring interfaces despite being built on the older DraftJS architecture rather than a modern block-native framework.
wangEditor is a JavaScript-based web rich text editor and WYSIWYG interface used for composing formatted documents directly in a browser. It serves as a client-side editing component for web applications to handle document styling and content manipulation. The editor is built as a plugin-based engine, allowing new features and formatting capabilities to be added through a registration interface. It utilizes a schema-driven approach to validate HTML tags and attributes, ensuring clean and consistent document output. The project provides tooling for content management systems, frontend text in
This is a feature-rich WYSIWYG editor that supports plugin-based extensions and document styling, though it focuses on HTML-based output rather than the block-based architecture typical of modern modular editors.
This project is a plugin-based WYSIWYG document layout engine and rich text editor that uses Canvas and SVG for rendering. It functions as a collaborative editor utilizing conflict-free replicated data types to enable real-time synchronization across multiple users. The system serves as an interactive form builder, allowing for the embedding of input controls such as checkboxes and date pickers directly into documents. It is designed for high-fidelity output, ensuring the visual representation during editing matches the final format for PDF and image exports. The editor covers broad capabili
This is a plugin-based rich text editor framework that supports document layout and interactive elements, though it uses a Canvas-based rendering approach rather than the standard DOM-based block architecture typical of many React-integrated editors.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| typecellos/blocknote | 9.1K | TypeScript | other | |
| heyscrumpy/tiptap | 37.3K | TypeScript | MIT | |
| madebymany/sir-trevor-js | 4.5K | JavaScript | MIT | |
| udecode/plate | 15.9K | TypeScript | other | |
| codex-team/editor.js | 31.5K | TypeScript | apache-2.0 | |
| toeverything/blocksuite | 5.5K | TypeScript | mpl-2.0 | |
| yoopta-editor/yoopta-editor | 3K | TypeScript | MIT | |
| react-page/react-page | 9.6K | TypeScript | MIT | |
| ueberdosis/tiptap | 37.3K | TypeScript | MIT | |
| facebookarchive/draft-js | 22.6K | JavaScript | MIT |