https://github.com/ded/sqwish
a node-based CSS compressor
https://github.com/ded/sqwish
Last synced: about 1 year ago
JSON representation
a node-based CSS compressor
- Host: GitHub
- URL: https://github.com/ded/sqwish
- Owner: ded
- Created: 2011-04-23T18:12:17.000Z (about 15 years ago)
- Default Branch: master
- Last Pushed: 2015-07-01T03:19:13.000Z (almost 11 years ago)
- Last Synced: 2024-04-13T22:45:04.387Z (about 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 240 KB
- Stars: 200
- Watchers: 7
- Forks: 13
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Welcome to Sqwish
=================
A [Node](http://nodejs.org) based CSS Compressor. It works like this.
``` javascript
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:
``` css
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.
``` css
/* 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!**