Nuke - A powerful image loading and caching system

  •        42

A powerful image loading and caching system. It makes simple tasks like loading images into views extremely simple, while also supporting more advanced features for more demanding apps. Upgrading from the previous version? Use a Migration Guide.

https://kean.github.io/nuke
https://github.com/kean/Nuke

Tags
Implementation
License
Platform

   




Related Projects

PINRemoteImage - A thread safe, performant, feature rich image fetcher

  •    Objective-C

PINRemoteImageManager is an image downloading, processing and caching manager. It uses the concept of download and processing tasks to ensure that even if multiple calls to download or process an image are made, it only occurs one time (unless an item is no longer in the cache). PINRemoteImageManager is backed by GCD and safe to access from multiple threads simultaneously. It ensures that images are decoded off the main thread so that animation performance isn't affected. None of its exposed methods allow for synchronous access. However, it is optimized to call completions on the calling thread if an item is in its memory cache. PINRemoteImage supports downloading many types of files. It, of course, supports both PNGs and JPGs. It also supports decoding WebP images if Google's library is available. It even supports GIFs via returning FLAnimatedImages if it's compiled in (though this can be disabled).

Concorde - Download and decode progressive JPEGs on iOS.

  •    Objective-C

This is a framework for downloading and decoding progressive JPEGs easily on iOS and OS X. It uses libjpeg-turbo as underlying JPEG implementation. We vendor version 1.4.0 of the static library from libjpeg-turbo's official release for convenience. and replace your usage of UIImageView with CCBufferedImageView to automatically use progressive JPEGs if you have been using the UIImageView category before. This will work regardless of the original format of your files due to the image transformation functionality of the delivery API.

Flyimg - Microservice to resize and crop images on the fly

  •    PHP

Image resizing, cropping and compression on the fly with the impressive MozJPEG compression algorithm. One Docker container to build your own Cloudinary-like service.You pass the image URL and a set of keys with options, like size or compression. Flyimg will fetch the image, convert it, store it, cache it and serve it. The next time the request comes, it will serve the cached version.

libvips - A fast image processing library with low memory needs.

  •    C

libvips is a 2D image processing library. Compared to similar libraries, libvips runs quickly and uses little memory. libvips is licensed under the LGPL 2.1+. It has around 300 operations covering arithmetic, histograms, convolutions, morphological operations, frequency filtering, colour, resampling, statistics and others. It supports a large range of numeric formats, from 8-bit int to 128-bit complex. It supports a good range of image formats, including JPEG, TIFF, PNG, WebP, FITS, Matlab, OpenEXR, PDF, SVG, HDR, PPM, CSV, GIF, Analyze, DeepZoom, and OpenSlide. It can also load images via ImageMagick or GraphicsMagick.

libvips - A fast image processing library with low memory needs.

  •    C

libvips is a demand-driven, horizontally threaded image processing library. Compared to similar libraries, libvips runs quickly and uses little memory. libvips is licensed under the LGPL 2.1+. It has around 300 operations covering arithmetic, histograms, convolution, morphological operations, frequency filtering, colour, resampling, statistics and others. It supports a large range of numeric formats, from 8-bit int to 128-bit complex. Images can have any number of bands. It supports a good range of image formats, including JPEG, TIFF, PNG, WebP, FITS, Matlab, OpenEXR, PDF, SVG, HDR, PPM, CSV, GIF, Analyze, NIfTI, DeepZoom, and OpenSlide. It can also load images via ImageMagick or GraphicsMagick, letting it load formats like DICOM.


bimg - Small Go package for fast high-level image processing powered by libvips C library

  •    Go

Small Go package for fast high-level image processing using libvips via C bindings, providing a simple, elegant and fluent programmatic API.bimg was designed to be a small and efficient library supporting a common set of image operations such as crop, resize, rotate, zoom or watermark. It can read JPEG, PNG, WEBP natively, and optionally TIFF, PDF, GIF and SVG formats if libvips@8.3+ is compiled with proper library bindings.

Sharp - High performance Node.js image processing

  •    Javascript

The typical use case for this high speed Node.js module is to convert large images in common formats to smaller, web-friendly JPEG, PNG and WebP images of varying dimensions.Resizing an image is typically 4x-5x faster than using the quickest ImageMagick and GraphicsMagick settings.

imaginary - Fast, simple, stateless HTTP microservice for high-level image processing with first-class support for Docker & Heroku

  •    Go

Fast HTTP microservice written in Go for high-level image processing backed by bimg and libvips. imaginary can be used as private or public HTTP service for massive image processing with first-class support for Docker & Heroku. It's almost dependency-free and only uses net/http native package without additional abstractions for better performance.Supports multiple image operations exposed as a simple HTTP API, with additional optional features such as API token authorization, gzip compression, HTTP traffic throttle strategy and CORS support for web clients.

essential-image-optimization - Essential Image Optimization - an eBook

  •    CSS

Bring up a terminal and type node --version. Node should respond with a version at or above 0.10.x. If you require Node, go to nodejs.org and click on the big green Install button.

YYImage - Image framework for iOS to display/encode/decode animated WebP, APNG, GIF, and more.

  •    Objective-C

A: Make sure you added the WebP.framework in your project. You may call YYImageWebPAvailable() to check whether the WebP subspec is installed correctly. A: You should disable the Compress PNG Files and Remove Text Metadata From PNG Files in your project's build settings. Or you can rename your APNG file's extension name with apng.

iOS-WebP - Google's WebP image format decoder and encoder for iOS

  •    Objective-C

Google's WebP image format offers better compression compared to PNG or JPEG, allowing apps to send/retrieve images with smaller file sizes, reducing request times and hopefully provide a better user experience. #Usage Don't forget to #import <iOS-WebP/UIImage+WebP.h>. There are 3 methods in iOS-WebP, converting images to WebP format, converting images from WebP format, and setting an image's transparency.

pixterm - Draw images in your ANSI terminal with true color

  •    Go

PIXterm shows images directly in your terminal, recreating the pixels through a combination of ANSI character background color and the unicode lower half block element. If image has transparency, an optional matte color can be used for background. Also, you can specify a dithering mode; in which case, the image is rendered using block elements with different shades, or using standard ASCII characters in the same way. In dithering mode, the matte color is used to fill the background of the blocks or characters. The conversion process runs fast because it is parallelized in all CPUs.

lilliput - Resize images and animated GIFs in Go

  •    C++

lilliput resizes images in Go. Lilliput relies on mature, high-performance C libraries to do most of the work of decompressing, resizing and compressing images. It aims to do as little memory allocation as possible and especially not to create garbage in Go. As a result, it is suitable for very high throughput image resizing services.

JPEGView - Image Viewer and Editor

  •    C++

JPEGView is a small and fast viewer/editor for JPEG, BMP, PNG, WEBP, GIF and TIFF images. On-the-fly image processing is provided - allowing to adjust typical parameters as sharpness, color balance, contrast and local under-/overexposure.

lepto - Automated image Editing, Optimization and Analysis via CLI and a web interface

  •    Javascript

The main purpose of this tool is to automate image optimization and analysis. This project is recent, so use it with care, I'm listening to all feedback (we can talk via twitter, don't follow me I never tweet). What is the difference with ImageMin? I think that if you deal with large applications, then go on ImageMin, but if you are building small static websites and you want to optimize your resources easily, then you could try lepto.

WebP for .NET

  •    DotNet

Google's WebP image compression format exposed to .NET WebP for .NET is the very first official release of Google's WebP format implementation for the Windows platform.

vue-progressive-image - Vue progressive image loading plugin

  •    Javascript

To be able to immediately show some feedback to the user, it is possible to pass a placeholder image, which could be also 1% the size of the main image: it will be blurred so you can go crazy with optimizations here. The progressive-background has a "content" slot, which can hold content that needs to be rendered over the background image and also can hold a preloader. This slot has one property called "visible" that tells you when, for example, a preloader needs to be visible or not.

ImageMagick - ImageMagick 7

  •    C

Use ImageMagick® o create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, GIF, HEIC, TIFF, DPX, EXR, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves. The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: G2F (Ada), MagickCore (C), MagickWand (C), ChMagick (Ch), ImageMagickObject (COM+), Magick++ (C++), JMagick (Java), L-Magick (Lisp), NMagick (Neko/haXe), MagickNet (.NET), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), IMagick (PHP), PythonMagick (Python), magick (R), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images dynamically and automagically.

react-progressive-image - React component for progressive image loading

  •    Javascript

If you use the UMD build you can find the library on window.ReactProgressiveImage.react-progressive-image exports a single React component, ProgressiveImage, which takes a src and placeholder prop, as well as an optional onError function.