A Content Editor

Posted on January 31, 2015

editor example

I had this idea for a content editor. The idea is that content is divided into discrete chunks, or modules. Each module can be swapped out for another one (kinda like what the medium does).

You can find a scrappy demo of it here and see the source here.

Ideas are one thing but once I started prototyping, I started running into the gotchas.


Contenteditable doesn’t behave like a textarea or input. For example, hitting return would create <div><br></div>. You really need to write a lot of javascript to correct this behvior and do the heavy lifting of adding rich text (stuff like bold and italic). Here’s some good reading to explain contenteditable behavior.

This experience helped me learn a lot about contenteditable: it’s pretty hard. The medium engineering team wrote an article about how contenteditable is a bad idea. After prototyping this, reading that article and then playing with their publishing platform, I got a real sense that a lot of late nights and swearing went into their contenteditable editor.

Prototyping is a pretty good idea

I think the biggest lesson I learned about this is that prototyping an idea really exposes problems requring a lot of design thinking. For example, once I started playing with this “product”, trivial things like copying and pasting became head scratchers.