Agent skill
universal-emotion
Use when you need to achieve any emotional outcome through animation—provides a framework for mapping Disney principles to any target emotion.
Install this agent skill to your Project
npx add-skill https://github.com/dylantarre/animation-principles/tree/main/skills/06-by-emotional-outcome/universal-emotion
SKILL.md
Universal Emotion Animation Framework
Map Disney's 12 principles to any emotional goal through systematic analysis.
Emotional Goal
Any emotion can be achieved through intentional application of animation principles. This framework helps translate emotional intent into specific motion parameters.
Emotion Mapping Framework
Step 1: Define the Emotion
Identify your target on these spectrums:
- Energy: Low ←→ High
- Valence: Negative ←→ Positive
- Arousal: Calm ←→ Excited
- Dominance: Submissive ←→ Powerful
Step 2: Map Principles to Emotion
| Principle | Low Energy | High Energy |
|---|---|---|
| Squash & Stretch | 0-10% | 20-40% |
| Anticipation | 50-100ms | 150-300ms |
| Timing | 400-800ms | 100-250ms |
| Exaggeration | 0-15% | 25-50% |
| Follow Through | Extended settle | Quick bounce |
| Principle | Serious | Playful |
|---|---|---|
| Arc | Direct/Linear | Curved/Bouncy |
| Secondary Action | Minimal | Abundant |
| Straight Ahead | Avoid | Embrace |
| Appeal | Clean/Geometric | Round/Organic |
Step 3: Select Easing
| Emotion Type | Easing Style | Example |
|---|---|---|
| Calm | Symmetric ease | ease-in-out |
| Confident | Strong ease-out | cubic-bezier(0,0,0.2,1) |
| Playful | Overshoot | cubic-bezier(0.34,1.56,0.64,1) |
| Urgent | Sharp ease-out | cubic-bezier(0.0,0,0.2,1) |
| Elegant | Extended ease | cubic-bezier(0.4,0,0.6,1) |
Quick Reference by Emotion
Positive Emotions
- Joy: Fast timing, high squash/stretch, bouncy easing
- Trust: Consistent timing, minimal deformation, smooth easing
- Calm: Slow timing, subtle movement, symmetric easing
- Excitement: Fast timing, high energy, dynamic easing
Functional Emotions
- Urgency: Very fast, direct paths, attention-grabbing
- Professional: Moderate timing, minimal decoration, standard easing
- Friendly: Moderate timing, soft deformation, gentle easing
Premium Emotions
- Elegant: Slower timing, no deformation, refined easing
- Powerful: Deliberate timing, impact emphasis, strong easing
CSS Variables Template
:root {
/* Adjust based on target emotion */
--emotion-duration: 300ms;
--emotion-easing: cubic-bezier(0.4, 0, 0.2, 1);
--emotion-squash: 1;
--emotion-overshoot: 0;
}
Decision Tree
- Is the emotion high or low energy?
- Is the feeling positive, negative, or neutral?
- Should users feel in control or guided?
- Is this a moment or a state?
- What's the brand personality?
Combining Emotions
Real experiences blend emotions. Layer principles:
- Primary emotion: 70% influence
- Secondary emotion: 30% influence
- Adjust timing/easing accordingly
When to Use
- Novel emotional requirements
- Brand-specific interpretations
- Complex emotional journeys
- A/B testing emotional impact
- Cross-cultural considerations
- Accessibility adaptations
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
icons-badges
Use when animating icons, badges, avatars, status indicators, or small visual elements to add personality and feedback
navigation-menus
Use when animating navigation bars, menus, sidebars, or wayfinding elements to create smooth, intuitive transitions
lists-grids
Use when animating lists, grids, tables, or collections of items to create smooth ordering, filtering, and loading states
loaders-spinners
Use when creating loading indicators, spinners, progress bars, or skeleton screens to communicate system status
accordions-dropdowns
Use when animating accordions, collapsibles, dropdowns, or expand/collapse elements for smooth reveal transitions
universal-elements
Use when animating any UI element not covered by specific skills, or when applying general animation principles across multiple element types
Didn't find tool you were looking for?