Compress Images Using the Command Line
One of my favorite tricks to save time as a web developer and photographer is to use the TinyPNG API to compress images using the command line. Using the command line to compress images is a great way to compress images in bulk or to automatically compress images in an application that you are developing.
This tutorial requires installing this node-tinypng package.
Get Started
Install Node.js and NPM
The first step will be to install the TinyPNG package for Node.js. This will require that Node.js and NPM are installed. Run this command to check if NPM is installed:
npm -v
If the result is command not found: node then you need to install Node.js and NPM. This can be done by downloading the package here.
Install the Node.js TinyPNG Package
Once NPM is installed, the TinyPNG package can be installed. Run this command to install it.
sudo npm install -g node-tinypng
Get an API key from TinyPNG and set it as the default key.
tinypng -k YOURAPIKEY
That should be it! You should be ready to start using TinyPNG through Terminal.
Using the TinyPNG Node Package
Using the API is very easy. It can be used to compress a single image or multiple images. This API works for PNG and JPG images.
Compress One File
tinypng -r -n file.png
Compress All JPG Files Within A Directory
tinypng -r -n *.jpg
Hopefully, you find this tool as useful as I do. I have written about a few more handy tips for managing images using Terminal here.