Skip to content
A JS library for building WYSIWYG editors for HTML content.
JavaScript CoffeeScript CSS HTML
Branch: master
Clone or download

Latest commit

Latest commit a90b8f6 Feb 24, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
build Version bump Feb 1, 2020
external Updated to content edit 1.3.5 Feb 1, 2020
sandbox Version bump Jan 25, 2020
spec - Fix for #501. May 21, 2018
src Fixes #510 Jan 25, 2020
translations Added Catalan translation file Jan 25, 2020
.gitignore Added `npm-debug.log` to .gitignore Feb 20, 2016
.travis.yml Added missing `.travis.yml` file Oct 22, 2015 HTML Cleaner in place, experimental C&P working for web pages Nov 8, 2017
LICENSE Transfer from hg Sep 2, 2015 Add roadmap link Feb 24, 2020
SpecRunner.html Added tests for FlashUI class Sep 27, 2015
bower.json Added bower spec Mar 28, 2016
package-lock.json Fixes #542 Jan 25, 2020
package.json Version bump Feb 1, 2020

For information on the ContentTools 2.x roadmap please view the: Roadmap repo


Build Status

A JS library for building WYSIWYG editors for HTML content.



Using bower

bower install --save ContentTools

Using npm

npm install --save ContentTools


To build the library you'll need to use Grunt. First install the required node modules (grunt-cli must be installed):

git clone
cd ContentTools
npm install

Install Sass (if not already installed):

gem install sass

Then run grunt build to build the project.


To test the library you'll need to use Jasmine. First install Jasmine:

git clone
mkdir ContentTools/jasmine
mv jasmine/dist/ ContentTools/jasmine
cd ContentTools/jasmine

Then open ContentTools/SpecRunner.html in a browser to run the tests.

Alternatively you can use grunt jasmine to run the tests from the command line.

ContentTools via jsdelivr

ContentTools is available via the jsdelivr open source CDN, to reference a file from the ContentTools build directory use the following URL format:{version}/{file}

For example to access the current primary JavaScript file the URL would be:

As the project's CSS uses relative file paths you will need to either role your own version of CSS from the SASS files (recommended) or override references to fonts/images within your local CSS.


Full documentation is available at

Where to post...

  • How do I? -- StackOverflow
  • I got this error, why? -- StackOverflow
  • I got this error and I'm sure it's a bug -- post an issue
  • I have an idea/request -- post an issue
  • Why do you? -- chat with me on gitter (I may then post it as an issue)
  • When will you? -- chat with me on gitter (I may then post it as an issue)
  • You suck and I hate you -- contact us privately at!
  • You're awesome -- please find a megaphone and suitably high rooftop (but seriously any help spreading the word about ContentTools is much appreciated)

Stolen almost in it's entirety from this post on

Browser support

The current aim is for all the libraries to support IE9+, Chrome and Firefox. Test suites are complete for all the libraries except ContentTools and I'm using Jasmine to check that the tests pass in those browsers.

There will be some visual differences for ContentTools in IE9 as I use CSS animations for some of the UI feedback.

Helpful organizations

ContentTools is developed using a number of tools & services provided for free by nice folks at organizations committed to supporting open-source projects including BrowserStack, GitHub and jsdelivr, Travis CI.

You can’t perform that action at this time.