Syncfusion Feedback

Trusted by the world’s leading companies

Syncfusion Trusted Companies

Overview

The React Rich Text Editor is a feature-rich WYSIWYG HTML editor and WYSIWYG Markdown editor. It is widely used to create blogs, forum posts, notes sections, support tickets (incidents), comment sections, messaging applications, and more. The control provides an efficient user interface for a better editing experience with mobile support. It has various tools to edit and format rich content and return a valid HTML markup or Markdown (MD) content. It allows users to insert images, links, tables, and lists with modular architectures.

Interact with the Live React RTE

Try Live Demo

Runs in-browser. No installation required.

Why choose Syncfusion React Rich Text Editor?

React Wysiwyg Editor image

Powerful WYSIWYG Editing

Delivers a rich WYSIWYG HTML editor and Markdown editor with formatting, lists, colors, media insertion, and optional iframe editing.

Syncfusion Agentic Ui Builder image

AI-Assisted Development

Build advanced content editing experiences faster with the Agentic UI Builder and Syncfusion Agent Skills. Generate formatting tools, editor layouts, templates, and media-rich workflows with minimal manual effort.

React Rich Text Editor Flexible Editing image

Advanced Media & Content Support

Supports inserting images, videos, tables, hyperlinks, cell merging, clipboard actions, undo/redo, and Markdown editing.

React Rich Text Editor Html Preview image

HTML Source Editing & Live Preview

Allows editing directly in HTML source mode and viewing updates instantly through the HTML live preview.

React Rich Text Editor Adaptive Ui image

Fully Responsive & Mobile Optimized

Responsive UI that adapts seamlessly to desktop, tablet, and mobile screens. Optimized for smooth editing experiences across iOS, Android, and Windows devices.

React Rich Text Editor Globalization image

Accessibility, Localization & Global Readiness

Built with WAI-ARIA compliance and full keyboard accessibility for inclusive usage. Supports localization and globalization, including RTL rendering and culture-specific formatting for dates and numbers.

Installation & Quick Start

Follow these three steps to integrate the Rich Text Editor into your React application.

1

Install the Rich Text Editor Package

Install the Syncfusion React Rich Text Editor package by using npm.

npm install @syncfusion/ej2-react-richtexteditor --save

2

Import the required CSS styles

Import the required Syncfusion CSS files to apply proper layout and theme styling.

@import '../node_modules/@syncfusion/ej2-base/styles/tailwind3.css';
@import '../node_modules/@syncfusion/ej2-buttons/styles/tailwind3.css';
@import '../node_modules/@syncfusion/ej2-splitbuttons/styles/tailwind3.css';
@import '../node_modules/@syncfusion/ej2-inputs/styles/tailwind3.css';
@import '../node_modules/@syncfusion/ej2-lists/styles/tailwind3.css';
@import '../node_modules/@syncfusion/ej2-navigations/styles/tailwind3.css';
@import '../node_modules/@syncfusion/ej2-popups/styles/tailwind3.css';
@import '../node_modules/@syncfusion/ej2-richtexteditor/styles/tailwind3.css';

3

Initialize the Rich Text Editor component

Configure and render the React Rich Text Editor using the sample shown. Define the component in src/App.tsx. Explore the React Rich Text Editor example to learn more.

import { HtmlEditor, Image, Inject, Link, QuickToolbar, RichTextEditorComponent, Toolbar } from '@syncfusion/ej2-react-richtexteditor';
import './App.css';
function App() {
    return (
        <RichTextEditorComponent>
            <Inject services={[Toolbar, Image, Link, HtmlEditor, QuickToolbar]} />
        </RichTextEditorComponent>
    );
}
export default App;

AI-ready Rich Text Editor for smarter writing

Enhance your writing with the AI-ready Rich Text Editor. Fix grammar, rephrase content, switch languages, and summarize text instantly, all within the editor.

See the demo for smart text editing

AI Powered React Rich Text Editor component.

HTML editor toolbar

The React WYSIWYG text editor toolbar provides a variety of commands for editing and formatting the content. Use the toolbar to format text and paragraphs and insert images, hyperlinks, tables, lists, etc. The tool commands are grouped based on related functionality.

React WYSIWYG HTML editor with multirow toolbar.

Multiple-row toolbar

The toolbar commands that overflow are wrapped into the following rows within the toolbar.

React WYSIWYG HTML editor with expandable toolbar.

Expand toolbar

The overflow toolbar commands hidden in the next row become visible when the toolbar is expanded using the expand icon.

React Rich Text Editor with quick toolbar.

Quick toolbar

This toolbar contains frequently used commands related to text, images, tables, and links. It helps access and format the elements quickly and also customize them.

React WYSIWYG HTML editor with floating toolbar.

Floating the toolbar

The HTML WYSIWYG editor toolbar does not stick to the top of the editor, but floats within the editor area when scrolling the current page.

Fully customizable tools in React Rich Text Editor.

Fully customizable

The toolbar buttons of the React Rich Text Editor component are fully customizable. Add or remove buttons and group commands based on category. This helps users design the toolbar based on application needs, like an HTML blog editor or HTML email composer.

React WYSIWYG HTML editor with custom toolbar.

Custom tool

Add your own commands (tools) with actions to the toolbar along with built-in commands.


React WYSIWYG inline HTML editor.

Inline mode

The React Rich Text Editor displays an inline HTML editor when the content in an editable area is clicked or selected.


Mention and hashtag

When composing content in the React Rich Text Editor, users or groups can be tagged or selected from the suggestion list.

React Rich Text Editor with mention and hashtag.


Editing experience

The React Rich Text Editor component provides a wide range of tools and options for a better editing experience.

Insert image in React HTML WYSIWYG editor.

Insert images

Insert images in the content from a local path or server path with image captions and then link URLs to the images. Upload images to a server with drag-and-drop or file upload. Additionally, the editor offers options to insert images in BLOB or Base64 formats.

Hyperlinks insert in WYSIWYG React HTML editor.

Insert or change the hyperlinks with customization options such as display text, tooltips, and links to be opened in a new window.

Insert tables in React Rich Text Editor.

Insert tables

Insert and edit HTML tables to display grid-like tabular data in WYSIWYG Rich Text Editor. Manipulate the table and its elements dynamically (insert and remove rows and columns, resize whole table or rows or columns, and remove a table).

React Rich Text Editor with table merge and split.

Table cell merge and split

Merge two or more row or column cells into a single cell with their contents. Also, a single cell can be split both horizontally and vertically.

React Rich Text Editor with text alignment tools.

Text alignment

Built-in settings are available to align your content to the left, center, or right, or justify it.

Enter and Shift+Enter key configuration

The React Rich Text Editor allows tags to be inserted when pressing the Enter key and Shift+Enter keys. The following tags can be configured:

  • P: When ‘P’ is configured, pressing Enter or Shift+Enter will create a ‘p’ tag.
  • DIV: When ‘DIV’ is configured, pressing Enter or Shift+Enter will create a ‘div’ tag.
  • BR: When ‘BR’ is configured, pressing Enter or Shift+Enter will create a ‘br’ tag.

Formatting text

  • Format the selected content, whole paragraphs, or specific words or characters.
  • Format headings, quotations, code, paragraphs, etc.
  • Bold, italicize, underline, strikethrough, or capitalize letters and words.
  • Change paragraph indentation and spacing.
  • Select fonts and font sizes.
  • Use subscripts and superscripts.
  • Select font color and the background color for the content.

React Rich Text Editor formatting text.


Auto formatting for Markdown syntax in React WYSIWYG HTML editor.

Auto formatting for Markdown syntax

Autoformat enables quick content formatting using Markdown-like shortcodes. This eliminates the need for toolbar buttons or dropdowns for common formatting. As Markdown syntax such as # for headings, ** for bold, and * for italics are typed, the editor automatically converts it into HTML elements.


Checklists

Checklists (to-do lists) can be created directly within the Rich Text Editor. Users can easily add interactive checkbox items to their content, enabling task tracking and management within documents.

Checklist in React WYSIWYG HTML editor.


React WYSIWYG HTML editor with custom list.

Adding custom lists

Create ordered (numbered) or unordered (bulleted) lists to organize the content in the React Rich Text Editor. It provides support to change the bullet appearance for the unordered lists to circles or squares. It also supports different numbering formats for ordered lists such as lowercase Greek or uppercase Roman.


Quick insert for table rows and columns

Users can insert rows and columns into a table quickly. When hovering the mouse near the table edges, a “+” icon appears, enabling users to add rows or columns with a single click.

Quick insert for table rows and columns in React WYSIWYG HTML editor.


Line height in React WYSIWYG HTML editor.

Line height

Users can adjust vertical spacing between lines of text, giving them control over how tightly or loosely the text is packed within paragraphs. This helps improve readability and visual balance in the content layout.


Full screen text editor

Make the React Rich Text Editor full-screen size (full-page editor) for editing the content.

Full screen text editor in React WYSIWYG HTML editor.


React Rich Text Editor with format on pasting.

Paste from Microsoft Word and Excel

The React Rich Text Editor offers built-in options to paste content with images from Microsoft Word, Microsoft Outlook, and Microsoft Excel by filtering out tags, attributes, and styles. Additionally, choose whether the content should be pasted as plain text, with cleaned styles, or with source formatting styles.act Rich Text Editor seamlessly supports forms and obtain


The React Rich Text Editor is configured to turn text into a hyperlink automatically when a URL is typed as plain text.

React Rich Text Editor Autolinking image


Validation in React WYSIWYG HTML editor.

React form validations

The RTE supports forms and obtains values on form submission actions. The two types of validation are:

  • Required validation
  • Maximum-length validation

Limit content length

Users can restrict the number of characters in a particular section.

React WYSIWYG HTML editor with maximum length.


React Rich Text Editor Resize image

Resizable editor

The React Rich Text Editor can be resized, allowing users to widen or shrink the content area.


Insert an image through file manager

The integrated file manager in the editor inserts and uploads images from cloud storage or a server.

Insert images through file manager in React WYSIWYG HTML editor.


React Rich Text Editor with format painter.

Format painter

Use the format painter to effortlessly copy formatting and apply it to your content, eliminating the need for manual reformatting and saving you valuable time. Access the format painter through the toolbar or convenient keyboard shortcuts for quick and easy application. Take advantage of the sticky mode by double-clicking the toolbar button, which allows you to apply formats to multiple locations seamlessly.


React Rich Text Editor with clipboard operations.

Cut, copy, and paste

Use clipboard operations (cut, copy, and paste).

React Rich Text Editor with undo and redo actions.

Undo and redo manager

The React Rich Text Editor manages the history of undo and redo actions, enabling users to customize the steps involved in undoing edits.

React Rich Text Editor with print support.

Print the WYSIWYG Rich Text Editor content with applied formatting either by using the print option from the toolbar or programmatically.


Responsive React Rich Text Editor.

Touch-friendly and responsive WYSIWYG editor

The React Rich Text Editor (mobile HTML editor) recognizes touch gestures, allowing users to swipe left or right to move the toolbar. The responsive, mobile-friendly design provides the best user experience on all mobile, tablet, and desktop form factors.

React Rich Text Editor with customizable themes.

Built-in and customizable themes

The React Rich Text Editor ships with several built-in themes: Tailwind CSS, Bootstrap 5, Bootstrap 4, Bootstrap, Material, Fabric, Fluent, and high contrast.

React Rich Text Editor APIs.

Developer-friendly APIs

There are sufficient client-side APIs available to enhance the process of content editing.


HTML editor accessibility

Keyboard navigation in React Rich Text Editor.

Keyboard navigation

The RTE ensures that every cell is accessible using the keyboard. Major features like sort, select, and edit can be performed using keyboard commands alone; no mouse interaction is required. This helps in creating highly accessible applications using this component.

Accessibility and screen reader support in React Rich Text Editor.

Screen reader

The RTE view has complete WAI-ARIA accessibility support. Its UI includes high-contrast visual elements that help visually impaired people to have the best viewing experience. Also, valid UI descriptions are easily accessible through assistive technologies such as screen readers.

React Rich Text Editor RTL support.

Right to Left (RTL)

The RTE supports right-to-left rendering, allowing the text and layout of the text editor to be displayed from right to left. This improves the user experience and accessibility for users of RTL languages such as Arabic, Farsi, and Hebrew.




Other Supported Frameworks

In addition to React, built-in integration is available for these major frameworks.

Discover Syncfusion’s Complete React Component Ecosystem

Explore over 145+ React UI components featuring established, production-ready controls and the latest pure React components built natively for modern web app development.

  • React Components
  • Pure React Components

Frequently Asked Questions

The Syncfusion React Rich Text Editor supports the following features:

  • Edit WYSIWYG HTML and Markdown content with a rich set of tools for modern web and mobile applications.

  • Easily incorporate into blog editors, message, HTML email composer, and discussion forum-like applications.

  • Make a floating toolbar or inline editor that allows you to select any editable element on the page and edit in place.

  • Enjoy simple configuration and APIs.
  • Renders in all modern browsers with ease.
  • Use a mobile-friendly and responsive UI.
  • Take advantage of expansive learning resources such as demos and documentation to get started quickly with the component.

You can find our React Rich Text Editor demo here, which demonstrates how to render and configure the Rich Text Editor.

Yes. Syncfusion’s React Rich Text Editor supports both HTML (WYSIWYG) and Markdown editing modes. You can switch to Markdown by setting editorMode=”Markdown” and injecting the MarkdownEditor module.

Yes. The editor includes a feature to autoformat Markdown patterns (for example, patterns related to bold, strikethrough, code, etc.).

Yes. It supports:

  • Undo/Redo via toolbar and keyboard shortcuts (Ctrl/Cmd + Z, etc.)
  • Clipboard-related features like Clipboard Cleanup to remove unwanted inline styles during copying and cutting while keeping table, list, and image structures.

  • Yes for mentions: Syncfusion supports integrating the React Mention component with the Rich Text Editor, where typing @ can open a suggestion list for tagging users and items. (dev.to)
  • For hashtags (#topic): you can typically implement it using the same Mention integration pattern (trigger character customization) in your app logic, but confirm your exact hashtag UX with the Mention component configuration you choose.

Yes. The editor includes a Fullscreen mode that expands to the full browser viewport, typically triggered via the FullScreen toolbar button.

No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue, 5 or fewer developers, and 10 or fewer total employees.

A good place to start would be our comprehensive getting started documentation.

  • You can install the React Rich Text Editor using npm: npm install @syncfusion/ej2-react-richtexteditor
  • After installation, add the required Syncfusion CSS files in your app and inject modules like Toolbar, HtmlEditor, Image, Link, and QuickToolbar to enable essential editing features.

Yes. The React Rich Text Editor follows WAI ARIA guidelines and supports assistive technologies and full keyboard navigation, enabling accessible interaction with the editor, toolbar, dialogs, and content.

It supports HTML editing (WYSIWYG) by default, and for a code or source editing experience, Syncfusion offers third-party integration (e.g., CodeMirror) to add an HTML source editor button and workflow.

It provides an undo/redo stack with configurable history behavior:

  • undoRedoSteps controls the maximum stored actions (documented limit up to 30 in the guide)

  • undoRedoTimer controls how frequently actions are captured

  • You can also clear history via clearUndoRedo() when loading or resetting content

Yes. It supports quick toolbars (context toolbars) that appear when selecting or clicking elements like images, links, audio, video, and tables, and they’re configurable via quickToolbarSettings.

Our Customers Love Us

Having an excellent set of tools and a great support team, Syncfusion® reduces customers’ development time.
Here are some of their experiences.

See Real Success Stories

Developers around the world trust Syncfusion’s Essential Studio to simplify complex projects and speed up delivery. With a vast library of UI controls, powerful SDKs, and reliable support, Essential Studio helps teams build enterprise-ready applications with confidence.

Read Our Customer Stories


Rated by users across the globe

Transform your applications today by downloading our free evaluation version

DOWNLOAD FREE TRIAL

No credit card required | 1.9M+ downloads

Awards

Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion® is proud to hold the following industry awards.

Recent activities in React Rich Text Editor blogs and tutorials

The React Rich Text Editor tutorial videos and blog posts will guide you in building your first app with this React components. They provide problem-solving strategies, describe features and functionalities, announce new feature releases, explain best practices, and showcase example scenarios. Explore our latest posts on our blog and tutorial video channels for React Rich Text Editor updates.

Up arrow icon