audit-swiftui-animation-motion

Audit macOS SwiftUI animation code for deprecated APIs, availability breaks, and missing Reduce Motion support.

2|1|Updated Jun 7, 2026
One-click install
npx skills add https://github.com/yigitkonur/plugin-swiftui --skill audit-swiftui-animation-motion-yigitkonur
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: audit-swiftui-animation-motion
Source: https://github.com/yigitkonur/plugin-swiftui/tree/main/plugins/swiftui/skills/audit-swiftui-animation-motion
Command: npx skills add https://github.com/yigitkonur/plugin-swiftui --skill audit-swiftui-animation-motion-yigitkonur

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? SwiftUI animation code in macOS apps often contains deprecated implicit .animation(_) modifiers, ungated macOS 14 APIs like spring presets and symbolEffect, hand-rolled loops that PhaseAnimator replaces, and motion that ignores the user's Reduce Motion setting. This Skill systematically detects these defects in an existing macOS SwiftUI project and reports them with verified fixes. ## Core Features & Use Cases - 11-Defect Detection Index: Covers deprecated single-arg .animation, dead value: bindings, raw curves where spring presets fit, ungated macOS 14 APIs, mis-wired matchedGeometryEffect hero transitions, missing contentTransition, and Reduce Motion violations. - Hybrid Lint Engine: Combines tier-1 ripgrep tells with a tier-2 ast-grep structural rule for single-argument arity detection, emitting unified JSON and SARIF output. - Corpus-Verified Fixes: Every flagged fix is backed by consensus API shapes from 1,857 real shipping macOS apps plus Apple documentation via Sosumi, with GitHub permalinks as citations. - Use Case: Point the audit at a macOS SwiftUI codebase before release to catch an ungated .bouncy spring preset that would crash on macOS 13, or a hero transition missing a shared @Namespace. ## Quick Start Ask the AI to audit the animation and motion code in your macOS SwiftUI project directory for deprecated APIs and availability issues.

Frequently Asked Questions about audit-swiftui-animation-motion

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find deprecated .animation modifiers in SwiftUI code?

Run the audit's lint engine, which uses an ast-grep structural rule to detect single-argument `.animation(_)` calls deprecated at macOS 12. Grep alone cannot distinguish argument arity, so the structural rule matches exactly one positional argument and flags it for the value-scoped `.animation(_:value:)` fix.

How to check SwiftUI animation availability for macOS 14 APIs?

The audit reads your deployment target from project.pbxproj or Package.swift, then flags ungated uses of macOS 14-only APIs like `.bouncy`, `.smooth`, `.snappy`, and `.symbolEffect`. Note the shipped DocC incorrectly renders spring presets as macOS 10.15; the true floor is macOS 14.

Does this audit modify my SwiftUI animation code automatically?

No, every defect in this domain is flag-only. The audit reports findings with a verified correct pattern sourced from real shipping apps, but the developer applies each fix because animation values, curves, and primitives require judgment.

What animation problems does the audit not cover?

Liquid Glass morph mechanics belong to the liquid-glass audit, per-frame render cost belongs to view-performance, app-wide Reduce Motion absence belongs to accessibility, and gesture-driven animation belongs to pointer-gestures. AppKit and Core Animation are entirely out of scope.

Why does matchedGeometryEffect hero transition fail in SwiftUI?

A hero transition fails when the two views lack a shared @Namespace, use mismatched ids, swap outside a single animated transaction, or set isSource on multiple views. The audit reads the code to verify all four wiring requirements before reporting.