Biblioteca leve, totalmente em Swift, para baixar, armazenar em cache e exibir imagens da web em apps para iOS, macOS e SwiftUI.
kean/Nuke
Sistema Swift de carregamento de imagens para plataformas Apple, com cache, processamento, decodificação progressiva e componentes para SwiftUI/UIKit.
- Estrelas
- 8,684
- Forks
- 575
- Issues abertas
- 25
- Último commit
- anteontem
O que é?
Nuke é um framework de carregamento de imagens para iOS, macOS, watchOS, tvOS e visionOS. Ele carrega imagens de URLs remotas e de outras fontes por meio de um pipeline que cuida de rede, decodificação, processamento e cache, permitindo que o código do app apenas solicite uma imagem e exiba o resultado.
O módulo principal oferece ImagePipeline com cache em memória e em disco, coalescência e prioridade de requisições, pré-carregamento e downloads retomáveis. O processamento e a descompressão de imagens acontecem no pipeline, que oferece suporte a formatos como JPEG progressivo, HEIF, WebP, GIF e imagens animadas. É possível acompanhar o progresso de um carregamento com sequências assíncronas.
NukeUI oferece views prontas para uso: LazyImage para SwiftUI e LazyImageView com ImageLoader para UIKit e AppKit. Há módulos separados para reprodução de vídeo, e a distribuição pelo Swift Package Manager inclui um app de demonstração no repositório.
Recursos principais
- 01Cache em memória e em disco para imagens carregadas
- 02Processamento e descompressão de imagens no pipeline
- 03Coalescência e prioridade de requisições, além de pré-carregamento
- 04Downloads retomáveis e suporte a JPEG progressivo
- 05Decodificação de HEIF, WebP, GIF e imagens animadas
- 06Componentes de exibição para SwiftUI, UIKit e AppKit
Casos de uso
- Carregar imagens remotas em uma lista ou grade no iOS ou macOS
- Exibir GIFs ou imagens WebP animados em um app SwiftUI
- Pré-carregar imagens antes de rolar um feed
Início rápido
- 1
Adicione o Nuke ao seu projeto com o Swift Package Manager (recomendado)
- 2
Abra Nuke.xcodeproj e execute o esquema NukeDemo para testar o app de demonstração
Antes de usar
- Funciona apenas em plataformas Apple (iOS, macOS, watchOS, tvOS e visionOS).
- A branch main contém o Nuke 14, que está em desenvolvimento e ainda não tem requisitos definitivos; a versão mais recente é o Nuke 13.
Em coleções
Tópicos
Perguntas frequentes
- O que é Nuke?
- Sistema Swift de carregamento de imagens para plataformas Apple, com cache, processamento, decodificação progressiva e componentes para SwiftUI/UIKit. Nuke é um framework de carregamento de imagens para iOS, macOS, watchOS, tvOS e visionOS. Ele carrega imagens de URLs remotas e de outras fontes por meio de um pipeline que cuida de rede, decodificação, processamento e cache, permitindo que o código do app apenas solicite uma imagem e exiba o resultado.
- Nuke é gratuito? Qual é a licença?
- Nuke é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- Nuke ainda é mantido?
- Manutenção ativa. O último commit de Nuke foi em 22 de out. de 2026.
- Para que posso usar Nuke?
- Carregar imagens remotas em uma lista ou grade no iOS ou macOS Exibir GIFs ou imagens WebP animados em um app SwiftUI Pré-carregar imagens antes de rolar um feed
- Como instalar Nuke?
- Adicione o Nuke ao seu projeto com o Swift Package Manager (recomendado) Abra Nuke.xcodeproj e execute o esquema NukeDemo para testar o app de demonstração
- Onde consigo Nuke?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/kean/Nuke
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Ferramenta local de compressão de imagens e GIFs com foco em privacidade para Web, Windows, macOS e Linux, com comparação, redimensionamento, conversão e renomeação.
Servidor HTTP independente que redimensiona, recorta, processa e converte imagens sob demanda com opções codificadas na URL.
GUI web auto-hospedada para ImageMagick com remoção de fundo por IA em um clique, processamento em lote e editor ao vivo, implantada via Docker.
Um armazenamento de dados em memória usado como cache, servidor de estruturas de dados, repositório de documentos e vetores e broker de mensagens.
Biblioteca de gerenciamento de estado assíncrono e busca de dados para apps web, com integrações para React, Vue, Svelte e Solid.