Socket
Socket
Sign inDemoInstall

image-shrink

Package Overview
Dependencies
12
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    image-shrink

Middleware for resizing images


Version published
Weekly downloads
2
increased by100%
Maintainers
1
Install size
353 kB
Created
Weekly downloads
 

Readme

Source

Image shrink

Connect middleware that resizes images on the fly with graphicsmagick.

It supports cropping & scaling, and caches the resulting images.

Usage

app.use(require("node-shrink")(options));

Shrink will then intercept all calls to:

  • /resize/filename-40x60.jpg?hash=0123456789abcdef
  • /crop/filename-40x60.jpg?hash=0123456789abcdef

Where the hex hash can either be (pseudo code):

md5(cacheFilename + secret) (when you can generate the hashes for each file individually)

or

md5("resize-40x60-secret") (when you have a JS app wher you can't leak the secret, but give the permission to generate a specify size of images)

Options

quality

0-100, the quality of the resulting images

secret

string

getFileUri

This function get's called with the filename parameter, and should return a complete URI to the filename. If you're working with mongo or some other store for your images, read the image here, and save it temporarely. Then call the callback with the isTmpFile parameter like this:

getFileUri = function(filename, callback) {
  // Read file here and save it to tmpFileUri
  callback(tmpFileUri, true);
  // Passing `true` here tells image-shrink that it should delete the
  // file when the image has been processed.
};

cachePath

The path for the cache.

Keywords

FAQs

Last updated on 29 Jan 2013

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc