OSS探訪GitHubでログイン

remote画像をImagePipelineで取得・処理・cacheし、SwiftUI/UIKitへ表示する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
8,676
主要言語
Swift
ライセンス
MIT
リポジトリ最終更新
2026/10/03
ページ内ナビ

概要

NukeはApple platform向けの画像loading systemです。ImagePipelineを中心にmemory/disk cache、image processing、request coalescing、priority、prefetch、resumable download、progressive imageを扱い、NukeUIやNukeExtensionsからSwiftUI/UIKitへ組み込めます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

ImagePipelineでdownload・decode・processing・cacheを一つの流れとして扱う

ImagePipelineからasync/awaitでimage taskを実行し、progressを購読しながら取得できます。memory/disk cache、request coalescing、priority、prefetch、resumable downloadなど画像配信向けの処理を共通pipelineへ集約できます。

出典:[2]

NukeUI・NukeExtensionsを用途に応じて追加する

SwiftUIではNukeUIのLazyImage、UIKit/AppKitではNukeUIのImageViewやNukeExtensionsのUIImageView extensionを選べます。coreのNukeとUI layerをmodule単位で分けて導入できます。

出典:[2][3]

向いている用途

feed・galleryなどremote画像が多いApple platform applicationに向く

画像取得のpriority、prefetch、cache、processingを画面ごとに再実装せず、SwiftUI/UIKitをまたいで同じpipeline policyを使いたいapplicationに適します。

出典:[2]

導入前の確認

13.2.0はSwift 6.2・Xcode 26・iOS 15以上が基準

READMEのNuke 13系minimum requirementsはSwift 6.2、Xcode 26.0、iOS 15、watchOS 8、macOS 12、tvOS 15、visionOS 1.0です。13.2.0ではprogressive imageの完了・cache格納・resize・非finite sizeによるcrashなど複数のfixが含まれるため、13.0/13.1系から更新する際は画像cacheとprogressive表示を回帰確認してください。

出典:[2][4][3]

参考にした公式資料

  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)
編集部からの補足

feedやgalleryでremote画像のpriority・prefetch・cacheを共通化したいSwiftUI/UIKit appに向きます。13系はSwift 6.2・Xcode 26・iOS 15以上が基準なのでtoolchain更新状況を先に確認してください。

3ステップで試す

  1. 1

    Nuke 13.2.0をSwiftPMで追加する

    確認済みreleaseを固定します。Nuke 13系はSwift 6.2、Xcode 26、iOS 15以上が基準です。

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

    NukeUIをimportする

    SwiftUI用のLazyImageを利用するためNukeUI moduleを読み込みます。

    import NukeUI
  3. 3

    LazyImageでremote画像を表示する

    READMEの例に沿ってURLを渡し、ImagePipeline経由のdownload・cache・表示を確認します。

    LazyImage(url: URL(string: "https://example.com/image.jpeg"))
公式READMEで確認

成長

成長の推移 · 直近30日

8,676 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
392
Open PR
19

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • cache
  • image
  • swift
  • webp
  • gif
  • progressive
Stars
8,676
Forks
572
Watchers
100
Open Issues
6
Contributors
85
所有者種別
User
主要言語
Swift
ライセンス
MIT
リポジトリ最終更新
2026/10/03

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?