Project

smusher

0.19
No commit activity in last 3 years
No release in over 3 years
Automatic Lossless Reduction Of All Your Images
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 0
>= 0
 Project Readme

LOSSLESS image size reduction for jpg, png and gif in the cloud

  • no image libraries needed, everything done in the interwebs
  • less size (up to a 97% saving) = faster downloads = less bandwidth + happy users

Install

install ruby + rubygems
sudo gem install smusher

Usage

Optimize a single image or a whole folder:

smusher /apps/x/public/images [options]
smusher /apps/x/public/images/x.png [options]
smusher /apps/x/public/images/*.png [options]

Options: -q, --quiet no output -c, --convert-gifs convert gifs to PNGs --service PunyPng use PunyPng for image optimizing, instead of SmushIt -v, --version display current version

Example

smusher /apps/ts/public/images
  smushing /apps/rs/public/images/social/facebook_icon.png
  2887 -> 132                              = 4%

  smushing /apps/rs/public/images/social/myspace_icon.png
  3136 -> 282                              = 8%

  smushing /apps/rs/public/images/dvd/dvd_1.png
  5045 -> 4                                = 0%
  reverted!
  ...

PunyPng - usage limit

The default Smusher::PunyPng.api_key is used by all users and could already be full when you try to smush some images.

Create a .puny_png_api_key in your home directory with your own api key from PunyPng.

Protection

Any image that returns a failure code, is larger than before, or is empty will not be saved.

TODO

  • only optimize 'new' images -> save time when doing on already optimized folder

JS + CSS

reduce images and minify css + js -> try reduce.

Authors

Michael Grosser
michael@grosser.it
Hereby placed under public domain, do what you want, just do not hold me accountable...