Skip to content

Glimpse 1.0.0

Latest

Choose a tag to compare

@dayaki dayaki released this 31 Jul 01:41

First release.

A SwiftUI-native async image loader in ~700 lines of code with zero dependencies — a minimal alternative to Kingfisher and Nuke.

What's in it

  • GlimpseImage, a drop-in replacement for AsyncImage: same three initializers, same AsyncImagePhase, plus a .placeholder { } modifier.
  • Decoded-image memory cache keyed by URL and display size; original bytes cached on disk with a size budget and TTL.
  • Downsampling at decode time via ImageIO, quantized to 64px buckets, never upscaling.
  • Request coalescing with refcounted cancellation — duplicate loads share one download, and it survives until the last subscriber goes away.
  • Prefetch API for scroll-ahead, and cancel-on-disappear through SwiftUI's own .task lifecycle.

Requirements

iOS 17+, macOS 14+, tvOS 17+, watchOS 10+, visionOS 1+ · Swift 6.0+

.package(url: "https://github.com/dayaki/Glimpse.git", from: "1.0.0")