An S3-compatible image processing server written in Go, supporting multiple storage backends and on-the-fly transformations.
Mort is an S3-compatible image processing server written in Go that handles on-the-fly image transformations and storage across multiple backends. It solves the problem of offloading image processing workloads from main applications by providing a scalable, self-hosted solution for resizing, converting, and manipulating images in real-time.
Developers and DevOps engineers building applications that require scalable image processing, storage, and delivery, particularly those using S3-compatible storage or needing a self-hosted alternative to cloud-based image services.
Developers choose Mort for its high performance, modular architecture, and extensive feature set including S3 compatibility, multiple storage backends, and Cloudinary-like APIs, all while being open-source and self-hostable.
Storage and image processing server written in Go
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports a wide range including disk, S3, HTTP, Azure, Google Cloud, Oracle, B2, and SFTP, enabling flexible integration into existing storage solutions as detailed in the features list.
Implements request collapsing to prevent duplicate processing and offers response caching in memory or Redis, reducing server load and latency as highlighted in the README.
Provides an API that mirrors Cloudinary's for image transformation and upload, making it easy for teams to migrate from or integrate with that service, as noted in the key features.
Designed with a fully modular architecture, allowing for custom URL parsers using Tengo and extensible configurations through environment variables, as emphasized in the philosophy and documentation.
The project is explicitly marked as still in active development, leading to potential breaking changes and less stability compared to mature alternatives like Imaginary or Thumbor.
Requires external dependencies like libvips and a Go environment for development, which can complicate deployment and maintenance compared to simpler, container-first solutions.
Focuses on core image operations; lacks built-in support for video processing, AI-based enhancements, or extensive third-party integrations found in commercial services like Cloudinary.
mort is an open-source alternative to the following products:
Cloudinary is a cloud-based image and video management platform that provides upload, storage, manipulation, optimization, and delivery services. It offers APIs and SDKs for various programming languages.
Imgix is a real-time image processing and delivery service that optimizes and transforms images on-the-fly via URL parameters for web and mobile apps.