Tidy

The granddaddy of HTML tools.

Supports modern standards.

Tidy reborn

Thanks for the efforts of HTACG and prominent contributors, HTML Tidy has a whole new heartbeat and a whole new life.

Tidy tidies

Tidy tidies HTML and XML. It can tidy your documents by itself, and developers can easily integrate its features into even more powerful tools.

Tidy gets out

Newest official release 5.8.0, July 2021. If you want the latest official, get the master branch of our tidy-html5 repository, and if you like life on the bleeding edge, be sure to check out next.

What is Tidy?

What is Tidy?

Tidy is a console application for macOS, Linux, Windows, UNIX, and more. It corrects and cleans up HTML and XML documents by fixing markup errors and upgrading legacy code to modern standards.

libtidy is a C static and dynamic library that developers can integrate into their applications in order to bring all of Tidy’s power to your favorite tools. libtidy is used today in desktop applications, web servers, and more.

Dox

Documentation

For everything you need to know about running Tidy head over to our documentation page.

There you will discover how to build the tidy console application for your operating system (if necessary), how to use it, and discover examples of all of the great things that Tidy can do.

Are you a developer? Are you looking for libtidy information? Then feel free to get started with the developer documentation.

Both users and developers of Tidy will find useful Quick Reference and API Reference documentation at our API and Quick Reference site.

History

History

HTML Tidy was created by the W3C’s own Dave Raggett back in the dawn of the Internet age. His original Internet page is still available and gives a sense of the early history: Clean up your Web pages with HTML TIDY.

Satisfied with his work, Dave passed the torch to a dedicated group of maintainers at tidy.sourceforge.net where the important tasks of turning Tidy into a C library and keeping up with developing standards was performed.

W3C members took a renewed interest in Tidy in 2011 and forked the project to github (now redirects to new maintainers), where it featured compatibility with HTML5 via a key contribution from one of the SourceForge key members.

In 2015 a group of concerned developers, users, and software integrators formed HTACG with the goal of revitalizing Tidy, which had fallen into a non-maintained state. As a W3C Community Group, HTACG was deemed worthy by the W3C, and W3C passed ownership of their project to HTACG, where it is currently being developed and prepped for a new, stable, and modern release.

HTACG is also working diligently with the SourceForge maintainers in an effort to harmonize HTML Tidy into a single, stable, solid release once again.

ACK

Acknowledgements

HTACG and the rest of the HTML Tidy team want to extend a sincere and heartfelt “thank you” to everyone who made Tidy possible.

  • Dave Raggett, the original developer.
  • Arnaud Desitter, long time SourceForge maintainer.
  • Charles Reitzel, long time SourceForge maintainer.
  • Björn Höhrmann, long time SourceForge maintainer.
  • Michael Smith, Github W3C maintainer.
  • HTACG members and contributors, who are working hard to bring you a new, stable Tidy.

Are we missing someone? Issue a pull request against the gh-pages branch of this repository. You will want to edit this file.

Dave Raggett also maintains a long list of acknowledgements at his page.

Get Tidy

Get Tidy

You may already have Tidy on your computer! Many operating systems ship with the tidy command pre-installed. Chances are good, though, that what you have is so outdated that it doesn’t even recognize HTML5.

Grab a binary

HTACG makes available binaries for several platforms available right here. If there isn’t one for your particular operating system then let us know. In the meantime there are a few more options.

Build from source

Building Tidy from source is easier than ever thanks to the efforts of our developers in adopting CMake. Tidy’s source code is available on its github repository.

Install from a package manager

macOS

Windows

Linux

  • Debian: sudo apt install tidy
Tidy

Software using HTML Tidy

The HTML Tidy library, libtidy, is used and incorporated into many applications and projects. It offers an extensive API to read in and parse html from a file or buffer into a DOM like node tree, has cleaning and diagnostic services, ability to iterate through this node tree, interogating attributes, child nodes, and a pretty print output. This is a list of just a few applications and projects.

  • edbrowse is a portable line editor like ed and a browser like lynx, an email client, and much more, and is the preferred tool of a large community of visually impaired developers and users. Read more…

  • mod_tidy is a libtidy based DSO module for Apache 2.0 that parses, cleans up, and pretty-prints the web server (X)HTML output. Read more…

  • node-libtidy provides server-side JavaScript bindings for libtidy. It aims to provide not only a high-level interface to a complete tidy run, but also offers methods which closely model the libtidy interface.

  • tidy-test is a set of sample applications that exercise various aspects of the libtidy API. And always looking for more samples. It also includes a CMake module, FindTidy.cmake to be able to find installed Tidy headers and library for the compile link.

  • Notepad is a powerful editor, and several people offer a plugin that uses libtidy to do cleaning, indenting, etc. Some version incompatibilites have been noted.

  • Balthisar Tidy is a free, full fledged text editor for macOS that encourages you to tidy your documents live, during editing.

There are also applications that use the tidy console executable externally to add html cleaning.

  • CSE HTML Validator is a commercial application for web professionals, webmasters, etc, anyone who wants to improve their web site, or money back. It includes an interface to the tidy exe.

Note that items appearing here aren’t endorsements by HTACG or the HTML Tidy Project team, but we do exercise some editorial discretion about what appears here.

If you think there’s something we’re missing that uses modern Tidy or libtidy, please feel free to issue a github pull request against this web site, and we will be sure to add it. You will want to edit this file.

FAQs

FAQs

How can I report bugs or make feature requests?

If you have a github account (easy and free) we encourage you to make bug reports and feature requests in our issues tracker.

How can I contribute to Tidy’s development?

We welcome code, website, and documentation contributions, and you are invited to join our open community. You can make pull requests for changes you make in our github repo.