Drag and drop site (Image, Javascript, & CSS) minification. Aka, I made a thing
16 September, 2011 TweetScott Hanselman has been on a roll of annoying posts lately. Annoying in the sense that I've had to read them and they've disrupted my thought process with awesome information that I really need to pay attention to with web dev stuff. The latest that has piqued my interest, The Importance (and Ease) of Minifying your CSS and JavaScript and Optimizing PNGs for your Blog or Website, did so during a night of insomnia which meant I was left with not a whole lot of (mental) processing power but wanting to do something.
And thus Kompressah was created.
Use at your own risk. I offer no warranty if this explodes your computer, renders files unusable, or causes otherwise undesired effects. I highly recommend you run it over a copy of your files until you're happy with the stability of the program.

Kompressah takes many of the techniques Scott talked about and puts them into a single drag-and-drop tool. Minifying Javascript? Check. Squishing CSS? No problem. Stripping JPEG EXIF data to reduce unused metadata from an image? Too easy. Using OPTIPNG to optimise PNGs? Couldn't be simpler.

How does it work?
I'll admit, I haven't actually written any of the processing code - CSS+JS Minification is achieved using Microsoft's AjaxMin library, PNG's are optimised using OPTIPNG and I'm using this snippet found via StackOverflow to strip EXIF information from JPEGs.
I've just created the GUI and glue portions to handle the different files. MahApps.Metro provided the UI controls/themes, and the icons are from the awesome Iconic Icon Set
Todo List
- The next feature I'm thinking of tacking on to Kompressah is generation of CSS sprites. You'd first group the images you'd want to join into a single sprite, then Kompressah would combine and auto-generate the CSS needed to use said sprites.
- Maintain folder structure better - currently everything just gets flattened
- Installer, combined with NAppUpdate for updates (currently you can get the source or the zip, no installation is needed)
- MORE OPTIONS!
- What level of OPTIPNG should be used,
- perhaps an option for using PNGOUT (it cannot be legally distributed with Kompressah),
- options to maintain some EXIF if wanted, or strip it all, etc,
- option to append 'min' or other custom suffixes to minimised files
Download
As always you can find the source on BitBucket, or you download the binaries (zipped, no installer, 275KB).

