Thumbor
Thumbor | |
---|---|
Developer(s) | Globo.com |
Initial release | June 6, 2013 |
Stable release | 7.7.7
/ May 15, 2025 |
Repository | github.com/thumbor |
Written in | Python |
Operating system | Cross-platform |
Platform | Cross-platform |
Type | Image processing |
License | MIT License |
Website | thumbor.org |
Thumbor is an open-source image processing service for real-time image resizing and manipulation. Originally developed by Globo.com, the tool is written in Python and supports smart image cropping using facial recognition and other object detection algorithms. Thumbor is free software licensed under the MIT License and distributed through GitHub.[1] It is notably used by large-scale organizations, including the Wikimedia Foundation,[2] Amazon Web Services,[3] and Square for their image processing infrastructure, and is recognized as a popular self-managed image content delivery network (CDN).[4]
Features
Thumbor enables dynamic resizing, allowing images to be generated in various sizes upon request. It can also leverage facial recognition and interest point detection algorithms to automatically crop images in a visually relevant way. Additionally, Thumbor provides filter support, enabling the application of effects such as brightness, contrast, and blur.
Thumbor also integrates with multiple backend systems, including Amazon S3, Google Cloud Storage, and Redis for storage and caching. Security features include encrypted URL signatures to prevent unauthorized manipulation.
Usage
Thumbor is used by companies requiring large-scale, real-time image manipulation—especially in news portals.,[5][6] e-commerce platforms,[7][4][8][9] and web applications that demand high-performance media delivery.[10]
Notable examples
The Wikimedia Foundation, which operates Wikipedia and other projects, uses Thumbor as part of its image processing infrastructure.[2] [11] [12] Since June 2017, all thumbnail traffic for public and beta wikis has been served through Thumbor. In February 2018, support was extended to private wikis,[13] and in April of the same year, the previous MediaWiki-based thumbnailing system was decommissioned. As of April 2023, Thumbor began serving production traffic via Kubernetes.[14]
Amazon uses Thumbor as part of its image processing infrastructure. The Serverless Image Handler solution, integrated with Amazon CloudFront, enables real-time image resizing, conversion, and filter application using Thumbor alongside AWS Lambda. Amazon’s official documentation lists supported filters such as blur, grayscale, equalize, sharpen, and smart crop, which can be applied via URL.[3]
Operation
Server-based architecture
Thumbor operates as a web service, processing images on demand. It receives HTTP requests with parameters such as image size, quality, cropping, and other adjustments. The server then manipulates the image according to the received parameters and returns the modified image to the client.
URL as interface
The primary interface for interacting with Thumbor is through URLs. These URLs can include various parameters for image manipulation, such as resizing (width, height),[15] filters[16] (e.g., blur, rotate), cropping,[17] and more. Thumbor processes the image based on the parameters passed in the URL.
Example URL:
https://thumbor.example.com/unsafe/300x200/smart/https://example.com/image.jpg
In this example:
300x200
defines the final dimensions of the image.smart
applies a smart cropping algorithm that attempts to focus on the most relevant content of the image.https://example.com/image.jpg
is the original image URL (source), which will be fetched and processed by Thumbor.
The segment unsafe
in the URL indicates that the image will be processed without requiring a security signature. This behavior can be configured depending on deployment settings.
See also
References
- ^ "thumbor/thumbor". GitHub – Thumbor contributors. Retrieved 2025-05-04.
- ^ a b "The journey to Thumbor, part 1: rationale – Wikimedia Tech Blog". 2017-06-20. Retrieved 2025-05-04.
- ^ a b Amazon Web Services. "Use supported Thumbor filters". AWS Documentation. Retrieved 2025-05-04.
- ^ a b Engineering, Square (18 April 2019). "Dynamic Images with Thumbor". Square Corner Blog. Retrieved 22 May 2025.
- ^ "Thumbor: Escalabilidade em processamento de imagens com reconhecimento facial para 20 milhões de brasileiros". InfoQ (in Portuguese). Retrieved 22 May 2025.
- ^ "feat: Support AVIF format encoding by fdintino · Pull Request #1476 · thumbor/thumbor". GitHub. Retrieved 22 May 2025.
- ^ Boeira, Marcelo (10 October 2018). "The Fast and the Payloadless". heycar. Retrieved 22 May 2025.
- ^ "Experimental exports - Hooks and Components". developers.vtex.com. Retrieved 22 May 2025.
- ^ "How Yipit Scales Thumbnailing with Thumbor and Cloudfront - Yipit Django Blog". 15 February 2024. Archived from the original on 15 February 2024. Retrieved 22 May 2025.
{{cite web}}
: CS1 maint: bot: original URL status unknown (link) - ^ "Use image CDNs to optimize images | Articles". web.dev. Retrieved 2025-05-22.
Thumbor is the most popular self-managed image CDN. It's open-source and free to use.
- ^ "The journey to Thumbor, part 2: thumbnailing architecture – Wikimedia Tech Blog". 2017-11-17. Retrieved 2025-05-04.
- ^ "The journey to Thumbor, part 3: development and deployment strategy – Wikimedia Tech Blog". 2017-11-20. Retrieved 2025-05-04.
- ^ Wikimedia Foundation (2018-02-22). "Thumbor support for private wikis deployed". Wikimedia Tech Blog. Retrieved 2025-05-04.
- ^ Wikimedia Foundation (April 2023). "Thumbor". Wikimedia Tech Blog. Retrieved 2025-05-04.
- ^ "Crop and Resize Algorithms — Thumbor 7.7.7 documentation". thumbor.readthedocs.io. Retrieved 22 May 2025.
- ^ "Filters — Thumbor 7.7.7 documentation". thumbor.readthedocs.io. Retrieved 22 May 2025.
- ^ "Crop and Resize Algorithms — Thumbor 7.7.7 documentation". thumbor.readthedocs.io. Retrieved 22 May 2025.