syncfusion-react-rich-text-editor
Implements the Syncfusion React Rich Text Editor (RichTextEditorComponent) from ej2-react-richtexteditor, supporting HTML (WYSIWYG) and Markdown editing. Use this skill for toolbar configuration, image/video/audio insertion, paste cleanup, AI assistant integration, emoji picker, slash menu, mentions, import/export Word/PDF, form validation, and source code view in React applications.
What this skill does
# Syncfusion React Rich Text Editor
A WYSIWYG (What You See Is What You Get) editor for creating and formatting rich content as HTML or Markdown. Supports toolbars, media insertion, AI assistance, smart editing features, form validation, and deep customization.
## When to Use This Skill
- Setting up a rich text / WYSIWYG editor in a React app
- Configuring toolbar items, types, or positions
- Switching between HTML and Markdown editor modes
- Inserting images, video, audio, or files
- Working with smart editing features: emoji, slash menu, mentions, mail merge
- Integrating AI assistant into the editor
- Handling editor value: get, set, two-way binding, auto-save, import/export
- Applying paste cleanup, form validation, or read-only mode
- Customizing styles, accessibility, or keyboard shortcuts
## Quick Start
```bash
npm install @syncfusion/ej2-react-richtexteditor
```
```tsx
// src/App.css - add CSS imports
// @import '../node_modules/@syncfusion/ej2-base/styles/tailwind3.css';
// @import '../node_modules/@syncfusion/ej2-buttons/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-splitbuttons/styles/tailwind3.css';
// @import '../node_modules/@syncfusion/ej2-richtexteditor/styles/tailwind3.css';
import {
HtmlEditor, Image, Inject, Link,
QuickToolbar, RichTextEditorComponent, Toolbar
} from '@syncfusion/ej2-react-richtexteditor';
function App() {
return (
<RichTextEditorComponent height={450}>
<Inject services={[Toolbar, Image, Link, HtmlEditor, QuickToolbar]} />
</RichTextEditorComponent>
);
}
export default App;
```
## Module Injection Reference
Inject only the modules your app needs โ this keeps the bundle lean.
| Module | What it enables |
|---|---|
| `Toolbar` | Toolbar rendering and commands |
| `HtmlEditor` | HTML editing mode (default) |
| `MarkdownEditor` | Markdown editing mode |
| `Link` | Hyperlink insert/edit/remove |
| `Image` | Image insertion and management |
| `Video` | Video insertion |
| `Audio` | Audio insertion |
| `Table` | HTML table insert/edit |
| `QuickToolbar` | Floating toolbar for images/links |
| `PasteCleanup` | Clean up pasted content formatting |
| `ClipboardCleanup` | Clean clipboard on copy/cut |
| `FileManager` | File browser for server-side images |
| `Resize` | Resizable editor area |
| `Count` | Character count display |
| `EmojiPicker` | Emoji search and insert |
| `SlashMenu` | Slash `/` command menu |
| `ImportExport` | Import Word, export Word/PDF |
| `CodeBlock` | Inline code block formatting |
| `AutoFormat` | Auto-convert Markdown syntax while typing |
| `FormatPainter` | Copy-paste text formatting |
| `AIAssistant` | AI assistant integration |
## Navigation Guide
### Getting Started
๐ **Read:** [references/getting-started.md](references/getting-started.md)
- Installation, npm setup, CSS imports
- Basic component implementation
- Module injection patterns
- Toolbar configuration basics
- Running the application
### Editor Modes
๐ **Read:** [references/editor-modes.md](references/editor-modes.md)
- HTML editor mode (default WYSIWYG)
- Markdown editor mode with preview
- IFrame vs DIV mode
- Inline editing
- Resizable editor
### Toolbar Configuration
๐ **Read:** [references/toolbar-configuration.md](references/toolbar-configuration.md)
- Default toolbar items
- Toolbar types: Expand, MultiRow, Scrollable
- Toolbar position (top/bottom)
- Sticky/floating toolbar
- Quick toolbar for images and links
### Toolbar Tools
๐ **Read:** [references/toolbar-tools.md](references/toolbar-tools.md)
- Built-in tools reference (Bold, Italic, Formats, etc.)
- Custom toolbar items with templates
- Text formatting tools
- Styling tools (font, color, alignment)
- Fullscreen tool
### Inserting Media
๐ **Read:** [references/insert-media.md](references/insert-media.md)
- Inserting images (URL, upload, base64)
- Video insertion and configuration
- Audio insertion
- File browser integration
### Inserting Content
๐ **Read:** [references/insert-content.md](references/insert-content.md)
- Tables: insert, resize, merge cells
- Hyperlinks: create, edit, open in new tab
- Code blocks
- Custom format blocks
### Smart Editing Features
๐ **Read:** [references/smart-editing.md](references/smart-editing.md)
- Emoji picker
- Slash menu (type `/` to open)
- Mentions (tag users)
- Mail merge
### Managing Editor Value
๐ **Read:** [references/editor-value.md](references/editor-value.md)
- Setting initial value
- Getting value via property, event, or method
- Two-way binding with React state
- Auto-save with `saveInterval`
- Import/export Word and PDF
- Markdown preview
- Character count and maxLength
- Source code view
### Paste & Clipboard
๐ **Read:** [references/paste-clipboard.md](references/paste-clipboard.md)
- Paste cleanup configuration
- Clipboard cleanup on copy/cut
- Executing editor commands programmatically
### Validation & Security
๐ **Read:** [references/validation-security.md](references/validation-security.md)
- Form support and submission
- XHTML validation
- Read-only mode
- XSS prevention
### AI Assistant
๐ **Read:** [references/ai-assistant.md](references/ai-assistant.md)
- AI integration setup
- AI assistant properties
- Customizing AI toolbar and responses
### Accessibility & Globalization
๐ **Read:** [references/accessibility.md](references/accessibility.md)
- WCAG 2.1 compliance
- Keyboard shortcuts
- Globalization, localization, RTL
- Style encapsulation
### Styling & Customization
๐ **Read:** [references/styling-customization.md](references/styling-customization.md)
- CSS variable customization
- Style encapsulation (shadow DOM)
- Third-party integrations (CodeMirror, Mention library)
- Spell/grammar check
### Undo / Redo
๐ **Read:** [references/undo-redo.md](references/undo-redo.md)
- Undo/redo manager behavior
- Keyboard shortcuts
- Programmatic undo/redo
### Enter Key & Selection
๐ **Read:** [references/enter-key-selection.md](references/enter-key-selection.md)
- Enter key configuration (P, BR, DIV)
- Selection API
- Cursor positioning
### Events
๐ **Read:** [references/events.md](references/events.md)
- Infer EventArgs Type value for each events
- Lifecycle events: `created`, `destroyed`, `focus`, `blur`
- Content change: `change` event with `ChangeEventArgs`
- Action events: `actionBegin` (cancelable), `actionComplete`
- Toolbar events: `toolbarClick`, `updatedToolbarStatus`
- Dialog & popup events: `beforeDialogOpen/Close`, `beforePopupOpen/Close`
- Media & file events: image/audio/video upload, select, remove, drop
- Paste & clipboard events: `beforePasteCleanup`, `afterPasteCleanup`
- AI Assistant events: `aiAssistantPromptRequest`, `aiAssistantToolbarClick`
- Resize, slash menu, selection, quick toolbar, import/export events
### Methods
๐ **Read:** [references/methods.md](references/methods.md)
- Focus & content: `focusIn`, `focusOut`, `getHtml`, `getText`, `getSelectedHtml`
- Toolbar: `enableToolbarItem`, `disableToolbarItem`, `removeToolbarItem`
- Dialog: `showDialog`, `closeDialog` with `DialogType` enum
- Selection: `selectAll`, `getRange`, `selectRange`
- Undo/redo: `clearUndoRedo`
- AI Assistant: `executeAIPrompt`, `addAIPromptResponse`, `getAIPromptHistory`, `clearAIPromptHistory`
- Utility: `executeCommand` (all `CommandName` values), `sanitizeHtml`, `destroy`
### Properties Reference
๐ **Read:** [references/properties.md](references/properties.md)
- Core: `height`, `width`, `enabled`, `readonly`, `placeholder`, `cssClass`
- Toolbar: `toolbarSettings`, `quickToolbarSettings`, `floatingToolbarOffset`
- Editor mode & behavior: `editorMode`, `iframeSettings`, `inlineMode`, `enterKey`
- Value & content: `value`, `maxLength`, `Related in Image & Video
watch
IncludedWatch a video (URL or local path). Downloads with yt-dlp, extracts auto-scaled frames with ffmpeg, pulls the transcript from captions (or Whisper API fallback), and hands the result to Claude so it can answer questions about what's in the video.
physical-ai-defect-image-generation
IncludedUse when the user wants to orchestrate defect image generation, run associated setup, or handle outputs on OSMO. The Day 0 path handles cold-start with USD-to-ROI, image-edit augmentation, and AnomalyGen to create initial PCBA datasets. The Day 1 path performs inference and labeling on real images. This skill helps with first-time asset setup, creation of finetuning checkpoints, and configuring deployment. Trigger keywords: defect image generation, dig workflow, dig pipeline, defect image detection workflow, aoi pipeline, aoi anomalygen, usd2roi anomalygen, day 0 pcba, day 1 pcba, day 1 real-photo alignment, day 1 manual roi, metal surface anomaly, glass defect, anomalygen finetune, setup_pcb, setup_metal, setup_glass, setup_pretrained, dig setup, dig datasets, dig pretrained checkpoint, dig image-edit endpoint.
accelint-react-best-practices
IncludedReact performance optimization and best practices. ALWAYS use this skill when working with any React code - writing components, hooks, JSX; refactoring; optimizing re-renders, memoization, state management; reviewing for performance; fixing hydration mismatches; debugging infinite re-renders, stale closures, input focus loss, animations restarting; preventing remounting; implementing transitions, lazy initialization, effect dependencies. Even simple React tasks benefit from these patterns. Covers React 19+ (useEffectEvent, Activity, ref props). Triggers - useEffect, useState, useMemo, useCallback, memo, inline components, nested components, components inside components, re-render, performance, hydration, SSR, Next.js, useDeferredValue, combined hooks.
elevenlabs-agents
IncludedBuild conversational AI voice agents with ElevenLabs Platform using React, JavaScript, React Native, or Swift SDKs. Configure agents, tools (client/server/MCP), RAG knowledge bases, multi-voice, and Scribe real-time STT. Use when: building voice chat interfaces, implementing AI phone agents with Twilio, configuring agent workflows or tools, adding RAG knowledge bases, testing with CLI "agents as code", or troubleshooting deprecated @11labs packages, Android audio cutoff, CSP violations, dynamic variables, or WebRTC config. Keywords: ElevenLabs Agents, ElevenLabs voice agents, AI voice agents, conversational AI, @elevenlabs/react, @elevenlabs/client, @elevenlabs/react-native, @elevenlabs/elevenlabs-js, @elevenlabs/agents-cli, elevenlabs SDK, voice AI, TTS, text-to-speech, ASR, speech recognition, turn-taking model, WebRTC voice, WebSocket voice, ElevenLabs conversation, agent system prompt, agent tools, agent knowledge base, RAG voice agents, multi-voice agents, pronunciation dictionary, voice speed control, elevenlabs scribe, @11labs deprecated, Android audio cutoff, CSP violation elevenlabs, dynamic variables elevenlabs, case-sensitive tool names, webhook authentication
humanizer
IncludedHumanize AI-generated text by detecting and removing patterns typical of LLM output. Rewrites text to sound natural, specific, and human. Uses 28 pattern detectors, 560+ AI vocabulary terms across 3 tiers, and statistical analysis (burstiness, type-token ratio, readability) for comprehensive detection. Use when asked to humanize text, de-AI writing, make content sound more natural/human, review writing for AI patterns, score text for AI detection, or improve AI-generated drafts. Covers content, language, style, communication, and filler categories.
generating-mermaid-diagrams
IncludedSalesforce architecture diagrams using Mermaid with ASCII fallback. Use this skill when generating text-based diagrams for Salesforce architecture, OAuth flows, ERDs, integration sequences, or Agentforce structure. TRIGGER when: user says "diagram", "visualize", "ERD", or asks for sequence diagrams, flowcharts, class diagrams, or architecture visualizations in Mermaid. DO NOT TRIGGER when: user wants PNG/SVG image output (use generating-visual-diagrams), or asks about non-Salesforce systems.