Fără Descriere

Vladislav Komkov d99d4f0d0b Add NetworkRetryStrategy tests 4 luni în urmă
.claude a5720fd900 Add prechange command 7 luni în urmă
.github 2622536b4a Optimize CI workflow to avoid duplicate runs 7 luni în urmă
Demo c384d5d731 Merge pull request #2416 from onevcat/darkbrewx-feature/network-metrics 6 luni în urmă
Kingfisher.xcodeproj 42b5ad77a5 Add network connection retry strategy 4 luni în urmă
Kingfisher.xcworkspace 5a4b34c2db Move Pod dependency to project 6 ani în urmă
Sources 42b5ad77a5 Add network connection retry strategy 4 luni în urmă
Tests d99d4f0d0b Add NetworkRetryStrategy tests 4 luni în urmă
docs 7453b2cbb7 Add LLM docs to the projects 8 luni în urmă
fastlane ba4a7f32f8 Update default Xcode version 7 luni în urmă
images 1869184c7b Protocol indicator 9 ani în urmă
.gitignore 197fe75c30 Add gitignore entries for Claude local settings 8 luni în urmă
.ruby-version dcdf4c64d1 Update Ruby and Xcode versions 1 an în urmă
.spi.yml f17aa80945 Only SPM can build doc correctly 1 an în urmă
CHANGELOG.md 2015fda791 Bump version to 8.5.0 7 luni în urmă
CLAUDE.md e573674ab3 Update format 7 luni în urmă
CONTRIBUTING.md 04a8d22dfd Fixes broken link in contributing documentation 4 ani în urmă
Gemfile bc8558672d Remove doc generate lane 5 ani în urmă
Gemfile.lock 83d7fbc17c Bump rexml from 3.4.1 to 3.4.2 4 luni în urmă
Kingfisher.json 7707172289 Add Carthage support for both watchOS and iOS platform 7 luni în urmă
Kingfisher.podspec 2015fda791 Bump version to 8.5.0 7 luni în urmă
LICENSE 107bc366fe Update LICENSE 6 ani în urmă
Package.swift 12918567e3 Update support version in Package.swift 2 ani în urmă
Package@swift-5.9.swift 6c3f663f59 Merge branch 'master' into v8 1 an în urmă
README-LLM.md 7453b2cbb7 Add LLM docs to the projects 8 luni în urmă
README.md 5387e7b3f1 Update doc 1 an în urmă

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+