Skip to content

Image identification service with Vips via Sharp support falling back to ImageMagick

License

Notifications You must be signed in to change notification settings

jonathanong/identify

Repository files navigation

@jongleberry/identify

Node.js CI codecov

A tiny image identification service:

  • Uses libvips via sharp if available
  • Falls back to ImageMagick
  • Errors if neither exist

API

const IdentifyService = require('@jongleberry/identify')

const identifyService = new IdentifyService({
  // defaults, no need to set these
  sharp: true,
  imagemagick: true, 
})

const filename = 'some-image.png'

try {
  const result = await identifyService.identify(filename)
  // ['imagemagick', {}]
  // ['sharp', {}]

  const metadata = await identifyService.normalize(result)
  // { width, height, ... }
} catch (err) {
  if (identifyService.isNotAnImageError(err)) throw new Error(`${filename} is not an image.`)
  throw err
}

About

Image identification service with Vips via Sharp support falling back to ImageMagick

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published