What problem does it solve?
The default SwiftUI AsyncImage view lacks built-in caching, request deduplication, and image processing capabilities, leading to redundant network downloads, excessive memory usage, and poor scrolling performance in apps that display repeated images like avatars, thumbnails, or grid content.
Core Features & Use Cases
- Full caching stack: Combines NSCache memory cache, LRU disk cache, and actor-based request deduplication to eliminate redundant downloads and reduce memory footprint by up to 1500x for large images.
- Drop-in SwiftUI view: Includes a CachedAsyncImage view that works as a direct replacement for the built-in AsyncImage with no changes to existing view code.
- Optional image processing: Supports resizing and thumbnail generation to optimize images for their display size, and prefetching for smooth scrolling in lists and grids.
- Use case: Ideal for SwiftUI apps with user avatar lists, media galleries, or product grids that need offline support, fast scrolling, and low memory overhead.
Quick Start
Use the image-loading skill to generate a complete cached image loading pipeline with a drop-in CachedAsyncImage view for your SwiftUI project.