The Quest For a WYSIWYG Input Element

htmlArea was the original name for a widget that replaced textarea elements with a full WYSIWYG editor.

The project has since vanished into oblivion, but given that Safari’s HTML editing was fundamentally broken until version 3, I started keeping a mini-directory of similar efforts here, mostly based on contentEditable.

I started doing that back in February 2009. It’s now 2016, and we still haven’t fixed this.

In short, it’s amazing how much effort people are wasting putting together (often brilliant) solutions for something that should have been sorted out early on in the history of the web browser.


Date Link Category Notes
Sep Trix JavaScript Basecamp’s own editor, with its own internal representation/document model.
Slate JavaScript A more generic approach for building custom editors.
Aug Prosemirror JavaScript A collaborative editor that uses Markdown as internal representation
May Quill JavaScript Another one with a sane approach at editing URLs (reached 1.0 in 2016, featuring an interesting internal document model and delta transforms for simultaneous editing).
Mar scribe JavaScript yet another attempt at taming contentEditable that almost works on mobile, except for a tendency to insert non-breaking spaces.
Feb jquery-notebook JavaScript A simple but effective jQuery plugin
Oct Sir Trevor JavaScript A very nice block-oriented editor. Depends on jQuery and a few other libraries.
Sep medium-editor JavaScript Inspired by the Medium editor, no dependencies, has a companion image upload plugin.
May Redactor JavaScript Pretty amazing. Requires jQuery.
Jan wysihtml5 JavaScript An HTML5-oriented effort, in use by XING.
Aloha Editor JavaScript Unobtrusive and lightweight.
Feb 13 WYMeditor JavaScript a very nice What You See Is What You Mean editor.
Older Flash Text Area Flash works pretty well, even considering the formatting options are very limited
flashArea free, $5 for source code. Does images, but has a bazillion standalone .swf files for each button.
Obedit pretty good for text-only input, doesn’t do images.
Flash text editor pretty old.
Wikiwyg JavaScript Mozilla-only, very old.