Imaginary is a high-performance HTTP microservice for image processing written in Go and powered by bimg and libvips. It can run as a private or public service and is designed for large-scale, low-memory image workloads. Images can be supplied through POST bodies, local files, or remote URLs. Supported operations include resizing, cropping, rotation, conversion, watermarking, and other transformations exposed through a simple HTTP API. Optional protections include API tokens, signed URLs, CORS, concurrency throttling, and fallback placeholder images. Docker and cloud deployment options make it suitable for distributed services. It supports common formats such as JPEG, PNG, WebP, and HEIF, with additional formats available through libvips builds.
Features
- High-performance HTTP image processing
- Resize, crop, rotate, and watermark operations
- Local, remote, and POST image sources
- API tokens and signed URL protection
- Concurrency throttling and placeholder fallbacks
- Docker and cloud deployment support