ios-animation-graphics-skilllisted
Install: claude install-skill fal3/claude-skills-collection
# Apple UI Animation and Graphics
Choose the simplest rendering system that expresses the motion, then make accessibility and lifecycle behavior part of the design rather than a later patch.
## Compatibility baseline
- `Canvas` and `TimelineView` require iOS 15, macOS 12, tvOS 15, or watchOS 8.
- `matchedGeometryEffect` requires iOS 14 / macOS 11.
- `PhaseAnimator`, `KeyframeAnimator`, and the first symbol-effect APIs require iOS 17 / macOS 14.
- Zoom navigation transitions and SwiftUI animation bridging into UIKit/AppKit require iOS 18 / macOS 15 where documented.
- Lottie’s native SwiftUI `LottieView` was introduced in Lottie 4.3. Pin a tested package version and obey that release’s Xcode, Swift, and deployment requirements; Lottie 4.6 requires Xcode 16 / Swift 6.
- Gate newer APIs with `#available` and provide a meaningful lower-target result. Treat 27-cycle APIs as unavailable unless the project actually builds with that SDK.
State the exact minimum that the proposed implementation needs; do not assign one minimum to every animation technique.
## Select the rendering path
| Need | Preferred tool |
| --- | --- |
| Animate SwiftUI state, layout, or transitions | `withAnimation`, value-scoped `.animation`, `transition` |
| Several discrete or timed phases | `PhaseAnimator` / `KeyframeAnimator` on iOS 17+ |
| Draw many lightweight vector elements | `Canvas` |
| Redraw continuously from elapsed time | `TimelineView(.animation)` around `Canvas` |
| Synchronize two SwiftUI