Socket
Book a DemoInstallSign in
Socket

is-progressive

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

is-progressive

Check if JPEG images are progressive

latest
Source
npmnpm
Version
5.0.1
Version published
Maintainers
1
Created
Source

is-progressive

Check if JPEG images are progressive

Can be useful to make sure your images are progressive, which is important for performance:

Progressive JPEGs are better because they are faster. Appearing faster is being faster, and perceived speed is more important that actual speed. - Progressive JPEGs: a new best practice

The check is fast as it only reads a small part of the file.

Install

npm install is-progressive

Usage

import isProgressive from 'is-progressive';

console.log(await isProgressive.file('baseline.jpg'));
//=> false

isProgressive.fileSync('progressive.jpg');
//=> true
// Check if a remote JPEG image is progressive without downloading the whole file
import https from 'node:https';
import isProgressive from 'is-progressive';

const url = 'https://raw.githubusercontent.com/sindresorhus/is-progressive/main/fixture/progressive.jpg';

https.get(url, async response => {
	console.log(await isProgressive.stream(response));
	//=> true
});

API

Prefer the file methods if you're dealing directly with files. Those methods are optimized to read in the least amount of bytes necessary to determine whether it's a progressive JPEG image.

.buffer(buffer)

Returns whether the buffer is a progressive JPEG image.

buffer

Type: Uint8Array

The buffer of a JPEG image.

Must be at least 65535 bytes when the file is larger than that.

.stream(stream)

Returns a Promise<boolean> indicating whether the file stream is a progressive JPEG image.

stream

Type: stream.Readable

A data stream with a JPEG image.

.file(filePath)

Returns a Promise<boolean> indicating whether the file at the filePath is a progressive JPEG image.

filePath

Type: string

The file path to the image.

.fileSync(filePath)

Whether the file at the filePath is a progressive JPEG.

filePath

Type: string

The file path to the image.

Build-system integration

Don't use this with a build-system like Gulp/Grunt as you can easily make the images progressive with the imagemin (Gulp/Grunt-task) progressive option instead of just warning about it.

  • is-progressive-cli - CLI for this module

Keywords

jpg

FAQs

Package last updated on 06 Jul 2024

Did you know?

Socket

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