Clean-css is a node.js library for minifying CSS files. It does the same job as YUI Compressor's CSS minifier but much faster thanks to many speed optimizations and the node.js itself.
node 0.6.0+ on *nix (fully tested on OS X 10.6+ and CentOS) node 0.8.0+ on Windows npm install clean-css You can minify one file public.css into public-min.css via:
cleancss -o public-min.css public.css To minify the same public.css into standard output skip the -o parameter:
cleancss public.css Or more likely you would like to do something like this (if you are on *nix system):
cat one.css two.css three.css | cleancss -o merged-and-minified.css Or even gzip it at once:
cat one.css two.css three.css | cleancss | gzip -9 -c > merged-minified-and-gzipped.css.gz var cleanCSS = require('clean-css'); var source = "a{font-weight:bold;}"; var minimized = cleanCSS.process(source); /*! Important comments included in minified output. */ You need vows testing framework (npm install vows) then simply run:
make test on *nix systems. If you are under Windows then run:
./test.bat - Vincent Voyer (@vvo) for a patch with better empty element regex and for inspiring us to do many performance improvements in 0.4 release.
- Isaac (@facelessuser) for pointing out a flaw in clean-css' stateless mode.
- Jan Michael Alonzo (@jmalonzo) for a patch removing node's old 'sys' package.
Clean-css is released under the MIT license.
