Repository navigation
EasyLoader 1.0.0
The first release of EasyLoader: loading states for SwiftUI in one line, with no dependencies.
Full-screen loader
- Show it with
.easyLoaderFull(isPresented:message:style:) - Covers the whole screen and blocks touches while it's showing
- Follows light and dark mode by default
- Use a colour, image, material or custom view as the background
- Use the system spinner, an SF Symbol, an image or a custom view as the indicator
Skeleton with shimmer
- Add
.easyLoaderSkeleton(isLoading:style:)to a container to turn its contents into placeholders - Choose a shimmer, pulse or static animation
- Skeletons on screen stay in sync
- Your views keep their
@Statewhen loading ends
Styling
- Set app-wide or per-section styles with
.easyLoaderFullStyleand.easyLoaderSkeletonStyle - Share styles as
static letproperties, including in Swift 6 apps
Accessibility
- VoiceOver announces loading states
- Reduce Motion replaces spinning and shimmering with a gentle fade
Requirements
- iOS 17+ or macOS 14+
- Xcode 16+ (Swift 6.0 tools)
Installation
Add this package URL in Xcode or your Package.swift: