OSS TanbouSign in with GitHub

load, process, and cache remote images through ImagePipeline for SwiftUI and UIKit

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
8,676
Primary language
Swift
License
MIT
Repository last updated
Oct 3, 2026
On this page

Overview

Nuke is an image loading system for Apple platforms. ImagePipeline handles memory and disk caches, image processing, request coalescing, priorities, prefetching, resumable downloads, and progressive images, while NukeUI and NukeExtensions connect the pipeline to SwiftUI and UIKit.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

Treat download, decoding, processing, and caching as one ImagePipeline

ImagePipeline runs async image tasks and exposes progress updates. Memory/disk caches, request coalescing, priorities, prefetching, and resumable downloads can be centralized behind one image delivery pipeline.

Sources: [2]

Add NukeUI or NukeExtensions according to the UI layer

SwiftUI can use NukeUI LazyImage, while UIKit and AppKit can use NukeUI ImageView or NukeExtensions UIImageView helpers. The package keeps the core and UI integrations in separate products.

Sources: [2][3]

Best fit

Fits image-heavy feeds and galleries across Apple platforms

It is useful when applications want shared policies for priority, prefetching, caching, and processing rather than rebuilding image loading behavior in each SwiftUI or UIKit screen.

Sources: [2]

Before adoption

Nuke 13.2.0 targets Swift 6.2, Xcode 26, and iOS 15+

The Nuke 13 requirements list Swift 6.2, Xcode 26.0, iOS 15, watchOS 8, macOS 12, tvOS 15, and visionOS 1.0. Version 13.2.0 also fixes several progressive-image, cache, resize, and non-finite-size crash issues, so upgrades from 13.0/13.1 should include regression checks for progressive rendering and caches.

Sources: [2][4][3]

Official sources

  1. [1]kean/Nuke — GitHub repository(2026-10-06)
  2. [2]Nuke 13.2.0 — README(2026-10-06)
  3. [3]Nuke 13.2.0 — Package.swift(2026-10-06)
  4. [4]Nuke 13.2.0 release(2026-10-06)
  5. [5]Nuke MIT license(2026-10-06)
Supplemental curator note

Nuke fits SwiftUI and UIKit feeds or galleries that need shared priority, prefetching, and cache policies. The 13.x line targets Swift 6.2, Xcode 26, and iOS 15+, so verify the project toolchain first.

Try it in 3 steps

  1. 1

    Add Nuke 13.2.0 with SwiftPM

    Pin the reviewed release. Nuke 13 targets Swift 6.2, Xcode 26, and iOS 15+.

    .package(url: "https://github.com/kean/Nuke.git", exact: "13.2.0")
  2. 2

    Import NukeUI

    Load the NukeUI module to use LazyImage from SwiftUI.

    import NukeUI
  3. 3

    Render a remote image with LazyImage

    Follow the README example and verify downloading, caching, and rendering through ImagePipeline.

    LazyImage(url: URL(string: "https://example.com/image.jpeg"))
Check the official README

Growth

Growth trends · Last 30 days

8,676 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
392
Open PRs
19

Development activity is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • cache
  • image
  • swift
  • webp
  • gif
  • progressive
Stars
8,676
Forks
572
Watchers
100
Open issues
6
Contributors
85
Owner type
User
Primary language
Swift
License
MIT
Repository last updated
Oct 3, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?