swiftui-animator-skill
v1.0.0
Published
A Claude Code agent skill that adds native SwiftUI animations — micro-interactions, view transitions, loading states, gesture-driven motion, hero animations, SF Symbol effects, and haptics — to iOS, macOS, watchOS, and visionOS views.
Maintainers
Readme
swiftui-animator-skill
A Claude Code agent skill that turns static SwiftUI views into views that move with intention — micro-interactions, view transitions, loading & state morphs, gesture-driven motion, hero animations, SF Symbol effects, and haptics. Native SwiftUI only, gated by your project's deployment target, no third-party motion libraries.
Works with iOS, macOS, watchOS, and visionOS targets.
What it does
Once installed, the skill activates automatically when you ask Claude to animate or polish a SwiftUI view — including phrasings that never say "animation": "make this feel responsive", "polish this view", "this looks static", "the button feels dead", "make it feel premium", "add a hero transition".
It then:
- Detects your deployment target (
Package.swift,*.xcodeproj,*.xcconfig) and gates newer APIs with#available. - Reads the view's neighborhood — the view itself, its siblings, and its parent container — before choosing anything.
- Picks an adaptive style per placement (minimalistic vs. expressive) from the surrounding context.
- Applies native SwiftUI patterns — springs,
phaseAnimator,keyframeAnimator,matchedGeometryEffect,symbolEffect,sensoryFeedback,ContentTransition— with reduce-motion fallbacks.
It runs in three modes: hybrid (default — propose, confirm, apply), interactive (asks first), and yolo (scan, decide, apply).
Installation
Requirements
- Claude Code installed
- Node.js ≥ 16.7 (only needed to run the installer below)
Quick install (recommended)
Install the skill so it's available in every project:
npx swiftui-animator-skillThis copies the skill to ~/.claude/skills/swiftui-animator/.
Install into a single project
Run this from your project root to install the skill into just that repo (committable, so the rest of your team gets it too):
npx swiftui-animator-skill --projectThis copies the skill to ./.claude/skills/swiftui-animator/.
Install via npm / global
# add to a project's devDependencies, then run the installer
npm install --save-dev swiftui-animator-skill
npx swiftui-animator-skill # user-level
npx swiftui-animator-skill --project # project-level
# or install the CLI globally
npm install -g swiftui-animator-skill
swiftui-animator-skill --projectInstaller options
npx swiftui-animator-skill [target] [options]
Targets:
(default) Install to ~/.claude/skills/swiftui-animator
--project, -p Install to ./.claude/skills/swiftui-animator
<dir> Install to <dir>/swiftui-animator
Options:
--force, -f Overwrite an existing install
--print Print the bundled skill's source directory and exit
--help, -h Show this helpManual install (no Node)
The skill is just Markdown. Copy the swiftui-animator/ directory from this package into either ~/.claude/skills/ or your project's .claude/skills/:
git clone https://github.com/Krythz43/SwiftUI-Animations-Claude-Skill.git
cp -R SwiftUI-Animations-Claude-Skill/swiftui-animator ~/.claude/skills/Verifying the install
Open Claude Code and run /skills (or ask "what skills do you have?"). You should see swiftui-animator listed. If not, restart Claude Code so it re-scans the skills directory.
Usage
Open Claude Code in a project that contains SwiftUI code and ask, in plain language:
polish this onboarding screen
make the favorite button feel alive
this list looks static — wake it up
add a hero transition from the grid cell to the detail view
yolo — surprise me with some motion on CheckoutView.swiftIn the default hybrid mode the skill proposes 2–5 specific placements with rationale and waits for your go-ahead before editing. Say "yolo" / "just do it" to skip the proposal step, or "ask me first" to have it scope with you interactively.
What's in the package
swiftui-animator/
├── SKILL.md # the skill definition + workflow
└── references/
├── decision-framework.md # intent × neighborhood × style → animation family
├── neighborhood-analysis.md # reading a view's siblings and parent
├── api-matrix.md # which APIs land in which OS version
├── motion-principles.md # timing, spring tuning, accessibility, performance
├── micro-interactions.md # taps, presses, toggles, SF Symbols, haptics
├── view-transitions.md # navigation, sheets, modals, matched geometry
├── loading-and-state.md # skeletons, shimmer, progress, async-state morphs
└── gesture-driven.md # drag, swipe, pinch, rubber-band, momentum, snap-backThe reference files are loaded by Claude on demand — only when the workflow points to them.
Updating
Re-run the installer with --force:
npx swiftui-animator-skill@latest --force # user-level
npx swiftui-animator-skill@latest --project --force # project-levelUninstalling
rm -rf ~/.claude/skills/swiftui-animator # user-level
rm -rf ./.claude/skills/swiftui-animator # project-levelLicense
MIT
