Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
The granddaddy of HTML tools, with support for modern standards.
HTML Tidy is the original open-source HTML cleanup tool, maintained by HTACG, that parses HTML and outputs corrected, standards-compliant markup, with the LibTidy C library at its core.
HTML Tidy is a free, open-source command-line tool and C library for correcting and cleaning up HTML markup. It takes malformed or legacy HTML as input and produces tidy, modern HTML, XHTML, or XML as output. The project is hosted on GitHub as htacg/tidy-html5 and has been canonical since 2015-01-15, after transferring from the W3C repository.
HTML Tidy is for web developers cleaning up legacy HTML, software engineers embedding HTML correction via LibTidy, and translators localizing Tidy's messages. It is also for maintainers who want to extend the tool with new tags, attributes, or configuration options.
HTML Tidy is built from source following the instructions in README/BUILD.md, which cover platform-specific builds. Once compiled, you run the tidy command on an HTML file; it parses the markup, reports errors, and outputs a cleaned version. The project includes detailed developer guides for adding features, ensuring the tool remains extensible.
HTML Tidy is free and open source software with a permissive license, as stated in README/LICENSE.md.
Yes, HTML Tidy is free and open source software with a permissive license. The full license text is in README/LICENSE.md.
Start with README/CONTRIBUTING.md for general guidelines, and follow the source code style in README/CODESTYLE.md. Pull requests must pass all existing regression tests, and new features require adding new tests.
Build instructions are in README/BUILD.md. The source is available on GitHub, and pre-built binaries for various platforms can be downloaded from binaries.html-tidy.org.
The LibTidy API documentation and a quick reference are hosted at api.html-tidy.org. This covers the C library interface for programmatic use.
The repository has multiple branches; README/BRANCHES.md explains which branch to use, and README/VERSION.md explains the version numbering scheme.
