Resources to help comparing & evaluating different CSS compressing techniques in general, and specifically different open-source CSS compressor implementations, with a clear focus on, but not limited to, JS/NodeJS based tools.
"Long, fragile lists of self-contradictory rules"
— Douglas Crockford on CSS
- Tech-talk slides "Shrinking CSS" by cssshrink creator Stoyan Stefanov
- CSS Compression: Block Sorting
- CSS Compression : Minifier Roulette
- CSS Compression : Minifier Roulette
- minify
- Sources on Github
- Demo: Advanced Online-Converter
- YIU's CssCompressor.java
- Sources on Github
- cssmin.js
- The first JavaScript port of Isaac Schlueter's Java implementation for YUICompressor, written by Stoyan Stefanov.
- Sources on Github
- Patched Sources on Github
- Java Source on Github
- Demo: Simple Online-Converter (boken!)
- Demo: Debugger tool for cssmin.js
- cssmin
- ycssmin
- Fork of cssmin
- Sources on Github
- Docs: Basic Usage
- yuicompressor
- Sources on Github
- Docs: Overview
- Docs: CSS Compression with YUICompressor
- sqwish
- Ultra-fast (but dirty) implementation.
- Sources on Github
- ncss
- Sources on Github
- csso
- clean-css
- Lib sources on Github
- Cli sources on Github
- OLD - Sources on Github
- Demo: Simple Online-Converter
- Docs: Basic usage info
- Docs: Constructor options
- Extra: Grunt tasks (grunt-contrib-cssmin)
- csscompressor
- csswring
- CSS compressor for PostCSS
- Sources on Github
- Docs: Quickstart
- Docs: API Options
- Docs: Minification details
- uglifycss
- cssnano
- Sources on Github
- Docs: Basic Usage
- Docs: Compress Options
- Docs: Optimisations
- Extra: Grunt tasks
- crass
- One of only a handful of CSS minifiers that creates a full parse tree of the CSS. Profit!
- Sources on Github
- Demo: Simple Online-Converter
- css-condense
- Sources on Github
- more-css
- Sources on Github
- Demo: Simple Online-Converter
- cssshrink
- Sources on Github
- Demo: Playground
- Docs: Technical slides
- Extra: Grunt task
- Extra: Gulp task
Dont forget:
- AjaxMin from the ASP.NET AJAX Control Toolkit, maintained by DevExpress
- css-minification-benchmark
- Automated benchmark tests & HTML reports comparing various NodeJS CSS compressor engines
- Sources on Github
- Demo: Auto-generated HTML report
- css-minificator-tests
- Automated Gemini regression tests for various NodeJS based CSS compressors
- Sources on Github
- Demo: Auto-generated HTML report
- 10 JS/NodeJS CSS Compressor Benchmark Result Table
- Dangerous CSS test data
- PostCSS
- Transform styles with JS plugins. Lint CSS, use variables and mixins, transpile future CSS syntax, inline images, and more.
- Sources on Github
- Docs: Complete plugin list
- Extra: Grunt tasks
- Article: What PostCSS Really Is; What It Really Does
- jscssp
- CSS Parser
- Source on Github
- Demo: Simple Online-Converter
- csstree
- CSS Parser and AST Builder
- Sources on Github
- Demo: Simple Online-Converter
- css-lexer
- CSS Lexer and Tokenizer
- Sources on Github
- Demo: Simple Online-Lexxer
- Docs: Just a blog post /w some background info
- node-minify
- Wraps several CSS and JS packages and is highly configurable.
- Sources on Github
- Docs: Quickstart
- stylelint
- stylefmt
- CSS Calc() Functions Improperly Compressed According to Specifications, needs spaces preserved => Patch
- cssmin
- CSSTidy (>= v1.4)
- CSS parser, optimiser and fixer
- Sources on Github
- CSSTidy (<= v1.3)
- Cross-plattform CSS parser, optimiser and fixer (written in C++) and also available as a script for webpages (written in PHP)
- C++ Sources & Binaries on Sourceforge
- PHP Sources on Sourceforge
- Project website on Sourceforge
- cssmin.rb
- Port of initial cssmin.js
- Source on Github