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

Description

a node-based CSS compressor

201 Stars 13 Forks 43 Commits 13 Opened issues

Services available

Need anything else?

Welcome to Sqwish

A Node based CSS Compressor. It works like this.

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

CLI

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

Notes

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

Developers

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

License

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.