node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



Node Wrapper for HTML Tidy

What is HTML Tidy?

HTML Tidy is an open source program for checking and generating clean XHTML/HTML. It cleans up coding errors in HTML files and fixes bad formatting. It can output files in the HTML, XHTML or XML file format.

Using HTML Tidy, developers can programatically clean up and fix poorly-written HTML pages. Another use is to convert HTML to XHTML or XML. These files can then be easily processed using the tools in the traditional XML chain, such as XSL transforms.


To use this library simply install it using npm:

npm install htmltidy


var tidy = require('htmltidy').tidy;
tidy('<table><tr><td>badly formatted html</tr>', function(err, html) {


tidy(text, [options], callback)

Clean html like text according optional configuration tidy options.

var opts = {
    doctype: 'html5',
    hideComments: false, //  multi word options can use a hyphen or "camel case" 
    indent: true


Create transform stream which can receive html like data as writable stream and output cleaned html/xml as readable stream.

var worker = tidy.createWorker(opts);

Platform support

  • Linux
  • Windows
  • OSX (experimental)


0.0.6 - Apr 18, 2013
  - bug fix update
0.0.5 - Feb 25, 2013
  - changes contributed by Keith Rosenberg
0.0.4 - Feb 23, 2013
  - fixed error in package.json
0.0.3 - Jan 11, 2013
  - fixed engine version error
0.0.2 - Oct 5, 2012
  - node Stream support, pipe and so on
  - more examples
  - example with worker pool for web front ends
  - experimental support for osx #1
0.0.1 - Sep 29, 2012
  - First NPM release