HTML Minifier
July 29, 2026 ยท View on GitHub
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:
๐ฆ Installation
- Download the latest release from the releases page
- Extract the
HtmlMinifier.exeto your desired location - 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 #includevirtual comments โ ASP.NET server-side includes are left intact- Knockout comments โ
<!-- ko -->/<!-- /ko -->are preserved whenignoreknockoutcommentsis set - Razor declarations โ
@model,@using,@inheritsare 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