Check if a Buffer/Uint8Array is a JPEG image
$ npm install is-jpg
const readChunk = require('read-chunk'); const isJpg = require('is-jpg'); const buffer = readChunk.sync('unicorn.jpg', 0, 3); isJpg(buffer); //=> true
const xhr = new XMLHttpRequest(); xhr.open('GET', 'unicorn.jpg'); xhr.responseType = 'arraybuffer'; xhr.onload = () => { isJpg(new Uint8Array(this.response)); //=> true }; xhr.send();
Accepts a Buffer (Node.js) or Uint8Array.
It only needs the first 3 bytes.
MIT © Sindre Sorhus