$npx skillfedfor your agent

pyvips

binding for the libvips image processing library

With conditionsPyPI GraphicsReleased Dec 2025708.3K downloads / moMITSource build

Decision gist · record as of 2026-08-14

sdist only — pyvips-3.1.1.tar.gz · builds from source
v3.1.1 · released 2025-12-09 · Python >=3.7 · 1 runtime deps: cffi

Yes, if you need fast, memory-efficient image processing and are willing to install libvips as a system dependency. High install friction (external library requirement) is the main trade-off, but performance and memory gains are substantial. No known security vulnerabilities and active maintenance make it a solid choice. Not suitable if you need a zero-dependency image library or if system-level package installation is not feasible.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • libvips shared library must be installed on the system (e.g., via apt, brew, or conda) and discoverable by the system library loader; on Windows, may require manual PATH configuration or use of os.add_dll_directory().
  • High install friction: requires libvips shared library (version 8.2 or later, 8.9+ for full features) to be present on the system.
  • Can build a faster API mode extension if development headers and a C compiler are available, otherwise falls back to slower ABI mode (~20% slower in execution).

License · maintenance · safety

MIT (permissive) — MIT license (permissive) means you can use, modify, and distribute freely in commercial and private projects with minimal restrictions, provided you include the license notice.

last release 2025-12-09 (248 days) · last repo commit 2026-07-31 · 815 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 708,339 downloads/mo, #5,265 on PyPI

Verify before relying

pip install pyvips

import pyvips
image = pyvips.Image.new_from_file('input.jpg')
image = image.resize(0.5)
image.write_to_file('output.jpg')
  • Whether the ~20% performance penalty of ABI mode is acceptable for your workload.
  • Exact feature gaps in the binary installation beyond what is documented.
  • Whether cffi API mode will be available on your specific platform and Python version.
Same gist for agents: .md · .json

What it is and what it does

pyvips is a Python wrapper around libvips, a C image processing library designed for speed and memory efficiency. Instead of loading entire images into memory, it builds pipelines of operations that stream image data in parallel from source to destination in sections. This architecture makes it substantially faster and more memory-efficient than alternatives for common tasks such as resizing, sharpening, and format conversion.

The package can operate in two modes: API mode (faster, requires libvips development headers and a C compiler to build a binary extension) or ABI mode (slower startup and ~20% runtime penalty, requires only the libvips shared library). It supports Python 3.7 through 3.14 and runs on Windows, macOS, and Linux. The fact sheet indicates active maintenance and no known vulnerabilities.

Use it for

  • Batch resize or transform large image collections with minimal memory footprint.
  • Build image processing pipelines that apply multiple filters or conversions in a single pass.
  • Process high-resolution TIFF or other large image formats where keeping the full image in memory is impractical.
  • Integrate fast image operations into web services or data processing workflows.
  • Scientific or research applications requiring efficient image manipulation and analysis.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need fast, memory-efficient image processing and are willing to install libvips as a system dependency.

High install friction (external library requirement) is the main trade-off, but performance and memory gains are substantial. No known security vulnerabilities and active maintenance make it a solid choice. Not suitable if you need a zero-dependency image library or if system-level package installation is not feasible.

Install

pyvips on PyPI

Before you install

High install friction: requires libvips shared library (version 8.2 or later, 8.9+ for full features) to be present on the system. Can build a faster API mode extension if development headers and a C compiler are available, otherwise falls back to slower ABI mode (~20% slower in execution). Binary installation option available but with reduced feature set.

libvips shared library must be installed on the system (e.g., via apt, brew, or conda) and discoverable by the system library loader; on Windows, may require manual PATH configuration or use of os.add_dll_directory().

License in practice

MIT license (permissive) means you can use, modify, and distribute freely in commercial and private projects with minimal restrictions, provided you include the license notice.

Quickstart

pip install pyvips

import pyvips
image = pyvips.Image.new_from_file('input.jpg')
image = image.resize(0.5)
image.write_to_file('output.jpg')

Verify before relying

  • Whether the ~20% performance penalty of ABI mode is acceptable for your workload.
  • Exact feature gaps in the binary installation beyond what is documented.
  • Whether cffi API mode will be available on your specific platform and Python version.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.7
Install frictionHigh. Source build required
Runtime dependencies
1 package
cffi
MaintenanceActively maintained 248 days since the last release
Last repo commit
First released
Downloads708,339 / month, #5,265 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Multimedia :: GraphicsTopic :: Multimedia :: Graphics :: Graphics Conversion

Evidence: pyvips-3.1.1.tar.gz

Tags

Capabilities
image processing librarylibvips python bindingstreaming image operationsparallel image processingmemory-efficient image manipulationimage pipeline processingfast image resizing and filtering
Topics
image-processingstreaming-pipelinememory-efficient
PyPI keywords
imageprocessing

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “image processing library”

  • pyvipsPython binding for libvips, a streaming image processing library that…
  • itk-coreitk-core provides Python bindings to the Insight Toolkit's core image…
  • pillowPillow adds image processing capabilities to Python, providing file…

Give your agent the search over MCP, or paste the wish link into any chat.

More Graphics packages

pillow Worth it
PyPI · Graphics · released Jul 2026

Pillow adds image processing capabilities to Python, providing file format support, efficient pixel data handling, and image manipulation operations.

Install it if you need to work with images in Python—it is the de facto standard for this task.

MIT-CMUcompiled wheel · 3.10+
547.1Mdownloads / mo
fonttools Worth it
PyPI · Text Processing · released May 2026

fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.

Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.

permissive licensepure Python · 3.10+
235.9Mdownloads / mo
matplotlib-inline Worth it
PyPI · Graphics · released May 2026

Enables matplotlib figures to display inline directly within Jupyter notebooks and IPython environments instead of in separate windows.

BSD-3-Clausepure Python · 3.9+
130.5Mdownloads / mo
pymupdf Worth it
PyPI · Libraries · released Aug 2026

PyMuPDF extracts, renders, converts, and manipulates PDF and other document formats (XPS, EPUB, images, Office files via Pro) with high performance, providing text, tables, images, and metadata with precise layout information.

The AGPL license requires careful review if you are building proprietary software—commercial licensing is available from Artifex.

AGPLcompiled wheel · 3.10+
114.9Mdownloads / mo
pypdfium2 Worth it
PyPI · Libraries · released Aug 2026

pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.

Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.

permissive licensecompiled wheel · 3.6+
76.9Mdownloads / mo
altair Worth it
PyPI · Graphics · released Jun 2026

Altair is a declarative Python library for creating interactive statistical visualizations by writing simple, readable code that compiles to Vega-Lite specifications.

BSD-3-Clausepure Python · 3.10+
54.5Mdownloads / mo

See also pyvips-binary · wgpu · crick · aiomultiprocess · img2pdf · python-ffmpeg · openslide-python