Repolode
onevcat

onevcat/Kingfisher

iOS, macOS, SwiftUI 앱에서 웹 이미지를 다운로드하고 캐싱해 표시하는 가벼운 순수 Swift 라이브러리입니다.

스타
24,403
포크
2,774
열린 이슈
164
마지막 커밋
7일 전

어떤 프로젝트인가요?

Kingfisher는 원격 URL의 이미지를 Apple 플랫폼 앱에 불러오는 Swift 라이브러리입니다. imageView.kf.setImage(with:) 같은 이미지 뷰 확장에 URL을 전달하면 이미지가 다운로드되어 메모리와 디스크 캐시에 저장되고 화면에 표시됩니다. 이후 같은 URL로 요청하면 캐시에서 이미지를 가져옵니다.

기본 이미지 로딩 외에도 이미지 프로세서와 필터, 캐시 만료 및 크기 제한, 취소 가능한 다운로드, 프리페칭, 플레이스홀더, 로딩 표시기, 전환 애니메이션을 제공합니다. 다운로드 관리자, 캐시, 프로세서는 각각 독립적으로 사용할 수 있습니다. UIKit과 AppKit의 뷰 및 버튼을 위한 확장과 KFImage 뷰를 통한 SwiftUI 지원도 제공합니다.

핵심 기능

  • 01메모리 및 디스크 캐시를 사용하는 비동기 이미지 다운로드
  • 02다운샘플링과 모서리 둥글게 처리 등을 포함한 이미지 프로세서와 필터
  • 03설정 가능한 캐시 만료 및 크기 제한
  • 04취소 가능한 다운로드 및 이미지 프리페칭
  • 05UIKit, AppKit, SwiftUI 이미지 뷰 확장

활용 사례

  • 리스트 뷰가 있는 iOS 앱에서 원격 상품 이미지나 아바타 표시
  • 메모리를 절약하기 위해 큰 사진을 대상 뷰 크기에 맞춰 로드
  • 사용자가 이미지 위치까지 스크롤하기 전에 이미지 프리페칭

빠른 시작

  1. 1

    저장소 URL을 사용해 Xcode에 Swift Package 의존성을 추가합니다

  2. 2

    CocoaPods Podfile에 Kingfisher를 추가합니다

  3. 3

    원격 이미지를 이미지 뷰에 불러옵니다

    imageView.kf.setImage(with: url)

사용 전 알아둘 점

  • Apple 플랫폼(iOS, macOS, tvOS, watchOS, visionOS)만 대상으로 하며 Swift가 필요합니다.
  • 현재 개발 브랜치에는 Xcode 26과 Swift 6.2 이상이 필요하며, 이전 릴리스보다 최신 버전입니다.

포함된 컬렉션

토픽

자주 묻는 질문

Kingfisher은(는) 무엇인가요?
iOS, macOS, SwiftUI 앱에서 웹 이미지를 다운로드하고 캐싱해 표시하는 가벼운 순수 Swift 라이브러리입니다. Kingfisher는 원격 URL의 이미지를 Apple 플랫폼 앱에 불러오는 Swift 라이브러리입니다. imageView.kf.setImage(with:) 같은 이미지 뷰 확장에 URL을 전달하면 이미지가 다운로드되어 메모리와 디스크 캐시에 저장되고 화면에 표시됩니다. 이후 같은 URL로 요청하면 캐시에서 이미지를 가져옵니다.
Kingfisher은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
Kingfisher은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
Kingfisher은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. Kingfisher의 마지막 커밋은 2026년 10월 18일입니다.
Kingfisher은(는) 어디에 사용할 수 있나요?
리스트 뷰가 있는 iOS 앱에서 원격 상품 이미지나 아바타 표시 메모리를 절약하기 위해 큰 사진을 대상 뷰 크기에 맞춰 로드 사용자가 이미지 위치까지 스크롤하기 전에 이미지 프리페칭
Kingfisher는 어떻게 설치하나요?
저장소 URL을 사용해 Xcode에 Swift Package 의존성을 추가합니다 CocoaPods Podfile에 Kingfisher를 추가합니다 원격 이미지를 이미지 뷰에 불러옵니다: imageView.kf.setImage(with: url)
Kingfisher은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/onevcat/Kingfisher

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트