HTML Minifier

July 29, 2026 ยท View on GitHub

Github Actions Status License: MIT

A fast and efficient command-line tool to minify your HTML, Razor views, and Web Forms views. Reduce file sizes, improve load times, and deliver a better user experience by removing unnecessary whitespace and comments from your HTML files.

โœจ Features

  • ๐Ÿš€ Fast Processing - Minifies files and entire directory trees quickly with parallel processing
  • โšก Parallel Processing - Utilizes all CPU cores for maximum performance (4-8x faster on multi-core systems)
  • ๐Ÿ“Š Beautiful Reporting - Comprehensive statistics with progress tracking and professional visual presentation
  • ๐Ÿ“ Flexible Input - Process individual files, specific folders, or entire directory structures
  • โš™๏ธ Configurable - Control line length and selectively disable minification features
  • ๐Ÿ”ง Framework Support - Special handling for Knockout.js, Angular, and other comment-dependent frameworks
  • ๐ŸŽฏ Targeted Minification - Choose what to minify: HTML comments, JavaScript comments, or Knockout comments
  • ๐Ÿ›ก๏ธ Safe Minification - Preserves content inside <pre>, <textarea>, and <code> tags, and normalises attribute whitespace
  • ๐Ÿ”„ CI/CD Ready - Easy integration with MSBuild and build pipelines

๐Ÿ“Š Beautiful Reporting

Every run finishes with a clear, colour-coded summary - per-file savings plus overall compression, throughput, and elapsed time:

HTML Minifier console reporting output showing per-file savings and a minification summary

๐Ÿ“ฆ Installation

  1. Download the latest release from the releases page
  2. Extract the HtmlMinifier.exe to your desired location
  3. Add the tool to your PATH or reference it directly

๐Ÿš€ Quick Start

Transform verbose HTML into compact, optimized code:

Before:

<h2>
    Admin Menu</h2>
<ul>
    <li>@Html.ActionLink("Edit blog entries", "List", "Admin")</li>
    <li>@Html.ActionLink("View Comments", "CommentList", "Admin")</li>
    <li>@Html.ActionLink("Clear Cache", "ClearCache", "Admin")</li>
</ul>

After:

<h2> Admin Menu</h2><ul><li>@Html.ActionLink("Edit blog entries", "List", "Admin")</li><li>@Html.ActionLink("View Comments", "CommentList", "Admin")</li><li>@Html.ActionLink("Clear Cache", "ClearCache", "Admin")</li></ul>

๐Ÿ“– Usage

Getting Help

View all available options:

HtmlMinifier.exe --help

Check the version:

HtmlMinifier.exe --version

Basic Usage

Minify all HTML files in a folder (including subfolders):

HtmlMinifier.exe "C:\Folder"

Advanced Options

Limit Line Length

Restrict the maximum number of characters per line:

HtmlMinifier.exe "C:\Folder" "60000"

Preserve Comments

For frameworks that rely on HTML comments (Angular, Knockout, etc.), preserve them:

HtmlMinifier.exe "C:\Folder" ignorehtmlcomments

Preserve JavaScript Comments

Keep JavaScript comments in your code:

HtmlMinifier.exe "C:\Folder" ignorejscomments

Preserve Knockout Comments

Specifically preserve Knockout.js comments:

HtmlMinifier.exe "C:\Folder" ignoreknockoutcomments

Multiple Targets

Minify Multiple Folders

HtmlMinifier.exe "C:\Folder\fld1" "C:\Folder\fld2"

Minify Specific Files

HtmlMinifier.exe "C:\Folder\file1.html" "C:\Folder\file2.html"

๐Ÿ”จ Build Integration

Integrate HTML Minifier into your build process for automatic minification during deployment. Check out this detailed guide on using HTML Minifier with MSBuild.

๐Ÿ›ก๏ธ What Gets Preserved

The following content is never altered by minification:

  • <pre>, <textarea>, <code> tags โ€” internal whitespace is kept exactly as-is
  • IE conditional comments โ€” <!--[if IE]>, <!--[if !IE]><!-->, and <!--<![endif]--> patterns are all preserved
  • #include virtual comments โ€” ASP.NET server-side includes are left intact
  • Knockout comments โ€” <!-- ko --> / <!-- /ko --> are preserved when ignoreknockoutcomments is set
  • Razor declarations โ€” @model, @using, @inherits are kept and correctly re-arranged
  • Attribute values โ€” content inside quotes is preserved; leading/trailing whitespace is normalised

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

๐Ÿ“ Requirements

  • .NET Framework (Windows)
  • Supports HTML, Razor (.cshtml), and Web Forms (.aspx) files

๐Ÿ“„ License

Copyright (C) Dean Hume 2013 - 2026

Released under the MIT License


Made with โค๏ธ by Dean Hume