Minify is a minifier package written in Go. It provides HTML5, CSS3, JS, JSON, SVG and XML minifiers and an interface to implement any other minifier. Minification is the process of removing bytes from a file (such as whitespace) without changing its output and therefore shrinking its size and speeding up transmission over the internet and possibly parsing. The implemented minifiers are designed for high performance. The core functionality associates mime-types with minification functions, allowing embedded resources (like CSS or JS within HTML files) to be minified as well. Users can add new implementations that are triggered based on a mime-type (or pattern) or redirect to an external command (like ClosureCompiler, UglifyCSS,). Minifiers or bindings to minifiers exist in almost all programming languages. Some implementations are merely using several regular expressions to trim whitespace and comments.
Features
- HTML (with JS and CSS) minification typically shaves off about 10%.
- Minification typically shaves off about 10%-15%
- The CSS minifier will only use safe minifications
- Remove comments and unnecessary whitespace
- Remove quotes for URLs
- Shorten numbers by removing unnecessary + and zeros and rewriting with/without exponent