Works with any backend npm install Zero dependencies

Static Image Utilities

Use MultipleUpload static methods to process images independently of an uploader instance.

MultipleUpload.resizeImage(file, 200, 200, 0.8)
MultipleUpload.compressImage(file, 0.3)
MultipleUpload.rotateImage(file, 90)
MultipleUpload.getImageDimensions(file)
MultipleUpload.detectMimeType(file)

Usable without an uploader

These are static methods on MultipleUpload, so they work on any File or Blob without constructing an instance. They are the same functions the upload pipeline uses internally, exposed so you can run them at other points in your application — a paste handler, a canvas export, a file the user picked somewhere else entirely.

What each one gives you

compressImage(file, quality, outputType) re-encodes and resolves to a new File. getImageDimensions(file) resolves to the pixel size without you having to build an Image yourself. detectMimeType(file) reads the first 32 bytes and identifies the type from its magic bytes, falling back to the browser's file.type only if the signature is unrecognised — which is why it is the honest answer when a .png is really a renamed executable.

All three return promises, and all three are client-side conveniences. Content-type checks that matter for security still have to be repeated on the server, where the user cannot reach them.