rayim

๐Ÿš€ Fast image compression for a large number of images, powered by the Ray library.

Python >=3.8 PyPI version MIT license

Why rayim?

โšก

Parallel by default

Distributes compression across all your CPU cores with Ray โ€” no setup required.

๐Ÿ“‰

~45% smaller

Typical JPEG output is roughly half the size with no visible quality loss.

๐Ÿ—‚๏ธ

Files & folders

Point it at single files, whole directories, or many of each at once.

๐Ÿ”ง

Flexible

Resize, convert to JPEG, optimize, replicate directory trees, and more.

Installation

pip install rayim

Usage

# Compress a single file
rayim foo.jpg
# ๐Ÿš€ foo.jpg: 1157. kB ==> 619.9 kB (-46.4%) | 0.07s

# Compress a folder, writing output to ./compressed
rayim foo/ -o compressed

# Resize to 800x600 and convert to JPEG
rayim foo/ -s 800 600 -j

Run rayim -h to see every option โ€” quality, subsampling, optimize, keep-date, and more.

Speed comparison

MethodFilesHardwareTime
Regular compression1,000Apple M1 (8 cores)60.090s
rayim1,000Apple M1 (8 cores)26.937s (55% faster)
Regular compression6,000Intel 2.3GHz (32 cores)7m42.9s
rayim6,000Intel 2.3GHz (32 cores)5m15.4s (32% faster)