--- id: pillow-jxl-plugin version: "1.3.8" license: unclear license_treatment: unclear maintenance: active --- # pillow-jxl-plugin — Pillow plugin for JPEG-XL, using Rust for bindings. License: unclear · Maintenance: active · Downloads: 215.6K/mo ## What it is and what it does pillow-jxl-plugin is a Pillow plugin that adds JPEG-XL (JXL) codec support via Rust bindings to libjxl. Once imported, it registers itself with Pillow and enables reading and writing JXL images through the standard image interface. The plugin supports both lossless encoding and lossy encoding with quality parameters, and can preserve EXIF metadata during encoding. It depends on pillow and packaging, and is distributed as pre-compiled wheels for Python 3.10–3.13 across Windows, macOS, and Linux platforms (manylinux and musllinux). Some platform–interpreter combinations lack wheels and require building from source, which needs Rust installed. Use it for: - Convert PNG or JPEG images to JXL format for better compression while preserving quality or lossless fidelity. - Read JXL images in image processing pipelines that already use Pillow without learning a separate API. - Batch-transcode image collections to JXL as part of web asset optimization workflows. - Encode images with EXIF metadata intact when switching to JXL in photo management applications. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Registers JPEG-XL codec support with Pillow, enabling reading and writing of JXL images through the standard image API with lossless and quality-based encoding options. Yes, if you need JXL support in Pillow and your platform has a compatible wheel. The package is actively maintained, has no known vulnerabilities, and integrates seamlessly with Pillow's standard API. The main caveat is the unclear license status—verify the repository's license before use in proprietary projects. Install friction is moderate due to compiled bindings, but wheels cover most common environments. ## Install pip install pillow-jxl-plugin uv add pillow-jxl-plugin poetry add pillow-jxl-plugin ## Installing pillow-jxl-plugin Before you install: Medium install friction due to compiled Rust bindings; wheels are available for Python 3.10–3.13 on Windows, macOS, and Linux (manylinux/musllinux), but not all platform combinations are covered. Actively maintained with a recent release. License in practice: License status is unclear; no SPDX identifier or raw license text is declared in the package metadata. Verify the actual license terms in the repository before use in proprietary or restricted contexts. Quickstart: import pillow_jxl from packaging import version # After import, use standard image operations # with Image.open("example.png") as img: # img.save("example.jxl", lossless=True) Requires pillow and packaging as runtime dependencies; Rust toolchain needed only when building from source. Verify before relying: - Actual license terms (no SPDX or raw license metadata provided) - Performance characteristics and stability guarantees across versions - Whether EXIF metadata encoding works reliably across all supported platforms ## Package facts - License: not declared (unclear) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 215.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags jpeg-xl pillow codec, jxl image format support, pillow jxl plugin, read write jpeg-xl images, jxl encoder decoder, image-codec, pillow-plugin, rust-bindings [View on SkillFed](https://skillfed.io/packages/pillow-jxl-plugin) · [View on PyPI](https://pypi.org/project/pillow-jxl-plugin/)