About design-motion-principles
design-motion-principles is a skill for creating or auditing interface motion. It helps designers and developers choose motion in context, using three distinct design lenses rather than applying one approach to every project.
Key features
- 01Create and audit modes
- 02Context-based lens weighting
- 03React, Framer Motion, CSS, and HTML output
- 04Motion-gap analysis
- 05Anti-AI-slop checklist
- 06HTML report or terminal output
Use cases
- 01Add considered motion to a UI component
- 02Review existing interface animations
- 03Generate an animation audit report
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ podo/ design-agent-skills --skill design-motion-principlesAfter installing, type/design-motion-principlesin Claude Code to confirm it loaded.
Bundled filesstub.yaml
Details
From the project READMEdesign-motion-principles
Catalogue stub — full skill: kylezantos/design-motion-principles
Decision tree
-
Is the full skill already installed?
- Global:
f=~/.agents/skills/design-motion-principles/SKILL.md; [ -f "$f" ] && ! grep -q "^das:" "$f" && echo "installed" || echo "pointer" - Project:
f=.agents/skills/design-motion-principles/SKILL.md; [ -f "$f" ] && ! grep -q "^das:" "$f" && echo "installed" || echo "pointer" installed→ the skill is installed asdesign-motion-principles, invoke it and proceedpointer→ go to step 2
- Global:
-
Detect scope, then install:
[ -e ~/.agents/skills/design-motion-principles ] && echo "global" || echo "project"Global:
npx skills add kylezantos/design-motion-principles --skill design-motion-principles -g -yProject:
npx skills add kylezantos/design-motion-principles --skill design-motion-principles -yClaude Code: send a command as a chat message starting with
!to run it without leaving the conversation.
Heads-up
- License: MIT
Invoke after install
- Skill name:
design-motion-principles - Trigger phrases: "add animation", "audit animation", "hover state", "enter exit animation", "motion review", "AI slop motion"
The skill detects its mode from your request:
| You say | Mode |
|---|---|
| "animate this", "add motion", "make it feel alive" | Create |
| "audit my animations", "review motion", "check for AI slop" | Audit |
| Ambiguous | Skill asks which mode |
What it does
Two modes, three lenses weighted to project context:
| Mode | Output |
|---|---|
| Create | Context discovery, lens weighting, then a component with motion baked in (React / Framer Motion / CSS / HTML) |
| Audit | Motion-gap analysis plus an anti-AI-slop checklist, delivered as a branded HTML report with auto-looping CSS demos, or --terminal for inline markdown |
Three lenses:
- Emil Kowalski — Restraint and speed. "Should this animate at all?"
- Jakub Krehel — Production polish. "Is this subtle enough?"
- Jhey Tompkins — Creative experimentation. "What could this become?"
The productive tension between these three lenses, not one applied universally, is the point. The skill reads its own workflows/ and references/ folders, so it must be installed through the skills CLI rather than by copying SKILL.md alone.
When NOT to use
- Static layout, color or typography work (use a design-systems skill such as
ui-ux-pro-max) - Only Emil Kowalski's single-lens guidance (use
emilkowalski-skill) - Interactive gesture-driven animation requiring JavaScript state (use
framer-motion-skills)