An image proxy using the Express Node.js framework
Switch branches/tags
Nothing to show
Pull request Compare This branch is 57 commits behind jpmckinney:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Image Proxy

A simple Express app for proxying and manipulating images.

Getting Started

npm install
node web.js
curl -I http://localhost:5000/

The URL structure is /:url/:width/:height. The :url parameter must be escaped/encoded. If the remote image's width or height is greater than the given :width or :height, it will be resized, maintaining aspect ratio, and cropped. If smaller, it will be padded with white pixels. The equivalent ImageMagick command is:

convert in.jpg -thumbnail 100x100^> -gravity center -extent 100x100 out.jpg

The Cache-Control header sets a max-age of one year.



git clone
heroku create
heroku config:set NODE_ENV=production
git push heroku master
heroku apps:open

AWS CloudFront

Create a distribution and set the "Origin Domain Name" to the domain name of your Heroku app. Use all default settings.

Bugs? Questions?

This project's main repository is on GitHub:, where your contributions, forks, bug reports, feature requests, and feedback are greatly welcomed.


This project is developed by Open North through a partnership with the Participatory Politics Foundation.

Copyright (c) 2013 Open North Inc., released under the MIT license