Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Towards open digital publishing
Failed to load latest commit information.
src Check for null value of DOM selection.
.jshintrc Added gitignore and jshintrc. Update
document.js Integrated new HtmlImporter implementation.
helpers.js Integrated new HtmlImporter implementation.
index.js Integrated new HtmlImporter implementation.


Substance is a toolkit for web-based content editors.

It provides generic API's:

  • Substance Document (define custom document schemas, instantiate and manipulate a document)
  • Substance Surface (Define the HTML structure of your custom editor and attach a Substance Surface on it to make it editable)

Substance also includes a reference implementation for an extensible web-editor.

  • Substance Writer

API for manipulating documents (Substance Document)

Getting started


Defining a and manipulating a Substance document


Rules that make your life easier:

  • Content tools must bind to mousedown instead of click to handle toggling. That way we can prevent the blur event to be fired on the surface.

  • The root element of a Substance Surface must be set contenteditable

Something went wrong with that request. Please try again.