ProseMirror document model
prosemirror.net
prosemirror.net
The problems with contentEditable are well-known. There is no real spec. There is a long list of bugs in all browsers, including Chrome and Firefox. There are many incompatibilities between the browsers. Granted, there are some hacks that help get contentEditable mostly working, but it's still a mess.
But contentEditable is fundamentally the wrong solution to the problem of rich-text editing. People copy and paste all manner of garbage into it (sometimes unintentionally). We've written routines that strip out the kinds of html that Microsoft Word produces, but it's still hard to keep the document relatively clean of font-sizes and other formatting problems. What we really want is something that specifies the structure of the document without specifying font-sizes or other appearance-specific attributes -- something like Markdown.
GitHub, StackOverflow and other sites have avoided contentEditable entirely, requiring users to edit in Markdown directly. But Markdown is more difficult to sell to non-programmers.
Medium and Google Docs have solved many of these problems, but their editing components are not open-source. ProseMirror is, to the best of my knowledge, the first industrial-grade open-source component to solve the rich text editing problem.
Unfortunately, it seems that a HN frontpage spot isn't happening for this project. If you know of communities that might be more interested in it, let me know.
I'm glad Prosemirror was written, since it sounds like it does similar things. Wish it existed a year ago. ;-)
ProseMirror can help fix this - by separating content from the HTML you're editing, you'll be able to edit things that live on the Web, without having to understand the complexities of the HTML etc. used for rendering in browsers.
"Why the Web needs better HTML editing components" - http://blog.pubblz.com