Overview
ESC-Editor is a WYSIWYG HTML editor built for React using contentEditable — no heavy third-party editor runtime required. It outputs clean HTML and exposes a simple controlled-component API.
The table support goes beyond basic insertion: you can add, remove, and rearrange rows and columns directly from the editor toolbar. Image insertion supports sizing and alignment options.
Dark mode is supported via CSS custom properties — override the CSS variables in your stylesheet to match any design system. No extra configuration required.
Theming, placeholder text, disabled state, and minimum height are all exposed as props. A `prepareContentForAPI` utility cleans selection markers from HTML before submission.
Tech Stack
Year
2026
Category
Open Source
Key Features
Advanced Table Support
Insert tables with full row and column management — add, remove, and rearrange directly from the toolbar.
Image Insertion
Insert images with sizing and alignment options. Supports URL-based image insertion with visual controls.
Rich Text Formatting
Bold, italic, underline, strikethrough, ordered/unordered lists, link insertion, and heading styles.
Source Code View
Toggle to raw HTML source view and edit directly — useful for power users and debugging output.
Dark Mode
Full dark mode support via CSS custom properties. Override variables in your stylesheet — no extra config.
Drop-In Component
Simple controlled API: `initialValue`, `onChange`, `placeholder`, `disabled`, `minHeight`. Works in any React 18+ project.
Use ESC-Editor
ESC-Editor is free and open source — use it, fork it, contribute.