No Description

Wei Wang f694011b88 Merge pull request #2465 from erichoracek/fix/imageprefetcher-handlecomplete-race 2 weeks ago
.github 711a956cf0 Use existing versions 1 month ago
Demo fb4e308058 refactor: deprecate onFailureImage in favor of onFailureView 2 months ago
Kingfisher.xcodeproj d30a5fad88 Bump version to 8.6.2 2 months ago
Kingfisher.xcworkspace 5a4b34c2db Move Pod dependency to project 6 years ago
Sources 506316b153 Snapshot arrays in ImagePrefetcher.handleComplete 1 month ago
Tests ec6e6c3d0f Fix watchOS build lane and reduce test flakiness 1 month ago
docs 14bd93b323 Remove unused xcode-install dependency 1 month ago
fastlane 2db9343eec Revert destination arch normalization 1 month ago
images 1869184c7b Protocol indicator 9 years ago
.gitignore b604ea2044 Ignore .claude and .codex; untrack .claude/commands 1 month ago
.ruby-version dcdf4c64d1 Update Ruby and Xcode versions 1 year ago
.spi.yml f17aa80945 Only SPM can build doc correctly 1 year ago
AGENTS.md 342f2dcfd7 Use AGENTS.md instead 3 months ago
CHANGELOG.md d30a5fad88 Bump version to 8.6.2 2 months ago
CLAUDE.md 4830e09333 docs: Add CLAUDE.md for Claude Code guidance 3 months ago
CONTRIBUTING.md 04a8d22dfd Fixes broken link in contributing documentation 4 years ago
Gemfile 14bd93b323 Remove unused xcode-install dependency 1 month ago
Gemfile.lock 14bd93b323 Remove unused xcode-install dependency 1 month ago
Kingfisher.json 7707172289 Add Carthage support for both watchOS and iOS platform 7 months ago
Kingfisher.podspec d30a5fad88 Bump version to 8.6.2 2 months ago
LICENSE 107bc366fe Update LICENSE 6 years ago
Package.swift 12918567e3 Update support version in Package.swift 2 years ago
Package@swift-5.9.swift 6c3f663f59 Merge branch 'master' into v8 1 year ago
README-LLM.md 7453b2cbb7 Add LLM docs to the projects 7 months ago
README.md 5387e7b3f1 Update doc 1 year ago

README-LLM.md

Kingfisher

Kingfisher is a powerful, pure-Swift library for downloading and caching images from the web, providing elegant async APIs for iOS, macOS, tvOS, watchOS, and visionOS applications. The library handles the complete image lifecycle with multi-layer caching, built-in processing, and extensive UI component integrations.

Quick Start

Core API Entry Points:

  • Sources/General/KingfisherManager.swift - Central coordinator
  • Sources/General/KF.swift - Builder pattern API (KF.url()...)
  • Sources/Extensions/ImageView+Kingfisher.swift - UIKit/AppKit extensions
  • Sources/SwiftUI/KFImage.swift - SwiftUI components

Essential Build Commands:

# Install dependencies and run all tests
bundle install && bundle exec fastlane tests

# Build for specific platform
swift build

# Full release workflow
bundle exec fastlane release version:X.X.X

Documentation

For LLMs and Developers:

  • Project Overview - What Kingfisher does, core purpose, technology stack, and platform support
  • Architecture - System organization, component map, key files, and data flow with specific file references
  • Build System - Swift Package Manager and Fastlane workflows, platform setup, and troubleshooting
  • Testing - Test categories, running tests, and test infrastructure with file locations
  • Development - Code style, implementation patterns, workflows, and common solutions
  • Deployment - Package types, platform deployment, release management, and CI/CD
  • File Catalog - Comprehensive file organization with specific file purposes and relationships

Configuration Files:

  • Package.swift - Swift Package Manager manifest
  • Kingfisher.podspec - CocoaPods specification
  • fastlane/Fastfile - Build automation
  • Sources/Documentation.docc/ - DocC documentation

Key Patterns:

  • Namespace wrapper (.kf property) in Sources/General/Kingfisher.swift
  • Builder pattern API in Sources/General/KF.swift
  • Options system in Sources/General/KingfisherOptionsInfo.swift
  • Protocol-oriented design throughout Sources/Image/ImageProcessor.swift

Requirements

  • Swift 5.9+ (Swift 6 strict concurrency ready)
  • iOS 13.0+ / macOS 10.15+ / tvOS 13.0+ / watchOS 6.0+ / visionOS 1.0+
  • SwiftUI support: iOS 14.0+ / macOS 11.0+ / tvOS 14.0+ / watchOS 7.0+ / visionOS 1.0+