Need help with sqwish?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

199 Stars 12 Forks 43 Commits 12 Opened issues


a node-based CSS compressor

Services available


Need anything else?

Contributors list

Welcome to Sqwish

A Node based CSS Compressor. It works like this.

require('sqwish').minify('body { color: #ff33cc; }');
// => "body{color:#f3c}"


Install it.

$ npm install -g sqwish

Use it like this:

$ sqwish app.css # default output is .min.css therefore app.css => app.min.css
$ # or...
$ sqwish css/styles.css -o prod/something-else.min.css


Sqwish does not attempt to fix invalid CSS, therefore, at minimum, your CSS should at least follow the basic rules:

selectors[,more selectors] {
  property: value;
  another-property: another value;

Strict Optimizations

Aside from regular minification, in --strict mode Sqwish will combine duplicate selectors and merge duplicate properties.

/* before */
div {
  color: orange;
  background: red;
div {
  color: #ff33cc;
  margin: 1px 0px 1px 0px;

/* after */ div{color:#f3c;background:red;margin:1px 0}

This mode can be enabled as so:

sqwish.minify(css, true);

on the command line

$ sqwish styles.css --strict


Be sure you have the proper testing harness set up ahead of time by installing the sink-test submodule

$ npm install --dev

Tests can be added in tests/tests.js, and then run as such:

$ npm test


Sqwish is copyright Dustin Diaz 2011 under MIT License

Happy Sqwishing!

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.