Skip to content
SPECIFICTION
Get listed

Sharp

sharp.pixelplumbing.com

WindowsmacOSLinuxAPISelf-hosted

Spec sheet

Purpose
Sharp is a high-speed Node-API module for converting large images into smaller, web-friendly images.Read 3 Oct 2026 · sharp.pixelplumbing.com
Product
Sharp is a high performance Node-API module for image processing, commonly used to convert large images into smaller web-friendly images.Read 4 Oct 2026 · sharp.pixelplumbing.com
Security
The security page says all input is assumed untrusted and rejected if decoding produces warnings, and the prebuilt binaries’ C, C++, and Rust dependencies are continuously fuzz-tested.Read 4 Oct 2026 · sharp.pixelplumbing.com
License
The project is licensed under Apache License 2.0.Read 4 Oct 2026 · sharp.pixelplumbing.com
Browser limitation
The optional WebAssembly package does not support use in web browsers or single-threaded environments.Read 3 Oct 2026 · sharp.pixelplumbing.com
Deep Zoom
Sharp can generate Deep Zoom image pyramids for use with slippy map tile viewers such as OpenSeadragon.Read 4 Oct 2026 · sharp.pixelplumbing.com
Formats
Sharp reads JPEG, PNG, WebP, GIF, AVIF, TIFF and SVG, and outputs JPEG, PNG, WebP, GIF, AVIF, TIFF or raw pixel data.Read 3 Oct 2026 · sharp.pixelplumbing.com
Image input and output
Streams, Buffer objects and the filesystem can be used for input and output, and one input stream can feed multiple processing pipelines.Read 3 Oct 2026 · sharp.pixelplumbing.com
Image operations
It supports image resizing, rotation, extraction, compositing, and gamma correction.Read 4 Oct 2026 · sharp.pixelplumbing.com
Image optimization
It can use mozjpeg and pngquant features to optimize JPEG and PNG file sizes without separate imagemin processes.Read 4 Oct 2026 · sharp.pixelplumbing.com
Input and output
Streams, Buffer objects, and the filesystem can be used for input and output, and a single input stream can feed multiple processing pipelines.Read 4 Oct 2026 · sharp.pixelplumbing.com
Input formats
Sharp supports reading JPEG, PNG, WebP, GIF, AVIF, TIFF, and SVG images.Read 4 Oct 2026 · sharp.pixelplumbing.com
Installation
The installation guide lists npm, pnpm, yarn, Bun, and Deno commands for installing Sharp.Read 4 Oct 2026 · sharp.pixelplumbing.com
Output formats
Sharp can output JPEG, PNG, WebP, GIF, AVIF, and TIFF images, as well as uncompressed raw pixel data.Read 4 Oct 2026 · sharp.pixelplumbing.com
Performance
The site says image resizing is typically 4x–5x faster than the quickest ImageMagick and GraphicsMagick settings, using libvips.Read 4 Oct 2026 · sharp.pixelplumbing.com
Platform binaries
Prebuilt binaries are listed for macOS, Linux, and Windows; FreeBSD is supported through WebAssembly.Read 4 Oct 2026 · sharp.pixelplumbing.com
Platform requirement
The installation guide requires a Node-API v9-compatible runtime, such as Node.js >= 20.9.0.Read 4 Oct 2026 · sharp.pixelplumbing.com
Processing model
Sharp processes small regions of uncompressed image data, uses multiple CPU cores, remains non-blocking, and supports Promises and async/await.Read 3 Oct 2026 · sharp.pixelplumbing.com
Runtime requirement
Installation requires a Node-API v9 compatible runtime, such as Node.js 20.9.0 or newer.Read 3 Oct 2026 · sharp.pixelplumbing.com
Runtime support
Sharp works with JavaScript runtimes that support Node-API v9, including Node.js >= 20.9.0, Deno, and Bun.Read 4 Oct 2026 · sharp.pixelplumbing.com
Security support
The latest version published to npm is supported with security updates, and genuine vulnerability reports can expect a response within 48 hours.Read 4 Oct 2026 · sharp.pixelplumbing.com
Security updates
The latest version published to npm is supported with security updates, and vulnerability reporters can expect a response within 48 hours for a genuine issue.Read 3 Oct 2026 · sharp.pixelplumbing.com
Supported systems
Prebuilt binaries are provided for macOS, Linux and Windows architectures, with stated architecture and system-library requirements.Read 3 Oct 2026 · sharp.pixelplumbing.com

Where Specifiction places it

Alternatives to SharpAll alternatives →