High-performance dynamic image server in Java
Cantaloupe is an open-source dynamic image server for on-demand generation of derivatives of high-resolution source images. With available operations including cropping, scaling, and rotation, it can support deep-zooming image viewers, as well as on-the-fly thumbnail generation. Compliance with the IIIF Image API enables it to work with a growing number of client applications.
Project goals include performance, scalability, and extensibility, without sacrificing ease-of-use.
Get started in minutes. A web server is built right in, or deploy to a container, if you want.
One human-friendly configuration file with extensive inline help.
Drive deep-zooming image viewers and create thumbnails for images, PDFs, and videos on-the-fly.
Serve images from multiple sources, with different settings, via the same application instance.
Dynamic, selective image and text watermarking with fine-grained controls.
On-the-fly redaction of image regions.
Built-in support for HTTPS and HTTP Basic authentication.
Supports arbitrary authorization policies for integration into diverse infrastructures.
Selectable resample filters, sharpening levels, and compression levels to optimize output for speed or quality.
Copy embedded EXIF, IPTC, XMP, and native metadata from source images to derivative images (with some formats).
Pluggable resolvers for retrieving images from a variety of sources—including filesystems, databases, remote web servers, cloud and object storage—with optional scriptable "hooks" to enable dynamic resolver selection and image lookup.
Pluggable processors to support a variety of source image formats—as well as still-frame extraction from videos in a variety of formats.
Pluggable caches with customizable strategies and available automatic maintenance.
Optimized JPEG2000 and TIFF readers capable of excellent performance with massive images.
Available asynchronous filesystem, database, Redis, in-memory, and cloud storage caches to speed up response times and reduce server load.
In-memory image metadata and delegate result caches to boost performance for frequently-accessed resources.
HTTP methods for common management functions like purging the cache and updating the configuration.
Fully conformant to all versions of the IIIF Image API, with separate endpoints for versions 1 and 2.