Repolode
kean

kean/Nuke

Система загрузки изображений на Swift для платформ Apple с кэшированием, обработкой, прогрессивным декодированием и компонентами для SwiftUI и UIKit.

Звёзды
8,684
Форки
575
Открытые issues
25
Последний коммит
позавчера

Что это?

Nuke — фреймворк для загрузки изображений в iOS, macOS, watchOS, tvOS и visionOS. Он загружает изображения по удалённым URL и из других источников через конвейер обработки изображений, который отвечает за сетевые запросы, декодирование, обработку и кэширование. Поэтому в коде приложения достаточно запросить изображение и отобразить результат.

Основной модуль предоставляет ImagePipeline с кэшами в памяти и на диске, объединением запросов, управлением приоритетами, предварительной загрузкой и возможностью возобновлять загрузки. Обработка изображений и декомпрессия выполняются в конвейере. Поддерживаются progressive JPEG, HEIF, WebP, GIF и анимированные изображения. За ходом загрузки можно следить с помощью async sequences.

NukeUI предоставляет готовые представления: LazyImage для SwiftUI и LazyImageView с ImageLoader для UIKit и AppKit. Отдельные модули отвечают за воспроизведение видео, а в репозитории вместе с дистрибутивом для Swift Package Manager есть демоприложение.

Ключевые возможности

  • 01Кэширование загруженных изображений в памяти и на диске
  • 02Обработка изображений и декомпрессия в конвейере
  • 03Объединение запросов, управление приоритетами и предварительная загрузка
  • 04Возобновляемые загрузки и поддержка progressive JPEG
  • 05Декодирование HEIF, WebP, GIF и анимированных изображений
  • 06Компоненты отображения для SwiftUI, UIKit и AppKit

Сценарии использования

  • Загрузка удалённых изображений в списке или сетке приложения для iOS или macOS
  • Отображение анимированных GIF- или WebP-изображений в приложении на SwiftUI
  • Предварительная загрузка изображений при прокрутке ленты

Быстрый старт

  1. 1

    Добавьте Nuke в проект с помощью Swift Package Manager (рекомендуется)

  2. 2

    Откройте Nuke.xcodeproj и запустите схему NukeDemo, чтобы попробовать демо-приложение

Что важно знать

  • Работает только на платформах Apple (iOS, macOS, watchOS, tvOS, visionOS).
  • В ветке main находится Nuke 14, который ещё разрабатывается, поэтому его требования пока не окончательны; последний релиз — Nuke 13.

В подборках

Темы

Частые вопросы

Что такое Nuke?
Система загрузки изображений на Swift для платформ Apple с кэшированием, обработкой, прогрессивным декодированием и компонентами для SwiftUI и UIKit. Nuke — фреймворк для загрузки изображений в iOS, macOS, watchOS, tvOS и visionOS. Он загружает изображения по удалённым URL и из других источников через конвейер обработки изображений, который отвечает за сетевые запросы, декодирование, обработку и кэширование. Поэтому в коде приложения достаточно запросить изображение и отобразить результат.
Nuke можно использовать бесплатно? Какая у него лицензия?
Nuke распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
Nuke всё ещё поддерживается?
Активно поддерживается. Последний коммит в Nuke — 22 окт. 2026 г..
Для чего можно использовать Nuke?
Загрузка удалённых изображений в списке или сетке приложения для iOS или macOS Отображение анимированных GIF- или WebP-изображений в приложении на SwiftUI Предварительная загрузка изображений при прокрутке ленты
Как установить Nuke?
Добавьте Nuke в проект с помощью Swift Package Manager (рекомендуется) Откройте Nuke.xcodeproj и запустите схему NukeDemo, чтобы попробовать демо-приложение
Где скачать Nuke?
Исходный код и инструкции по установке — на GitHub: https://github.com/kean/Nuke

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Локальная мастерская для сжатия изображений и GIF с приоритетом конфиденциальности: веб-версия, Windows, macOS и Linux; сравнение, изменение размера, конвертация и переименование.

746+3 за неделю42TypeScriptGPL-3.0Обновлён 7 дней назад