interaction-design

Design and implement microinteractions, motion design, transitions, and user feedback patterns. Use when adding polish to UI interactions, implementing loading states, or creating delightful user experiences.

By wshobson · 13,662 installs

npx skills add wshobson/agents --skill interaction-design

Source repository · Upstream listing

Interaction Design Create engaging, intuitive interactions through motion, feedback, and thoughtful state transitions that enhance usability and delight users. When to Use This Skill Adding microinteractions to enhance user feedback Implementing smooth page and component transitions Designing loading states and skeleton screens Creating gesture based interactions Building notification and toast systems Implementing drag and drop interfaces Adding scroll triggered animations Designing hover and focus states Core Principles 1. Purposeful Motion Motion should communicate, not decorate: Feedback : Confirm user actions occurred Orientation : Show where elements come from/go to Focus : Direct attention to important changes Continuity : Maintain context during transitions 2. Timing Guidelines Duration Use Case 100 150ms Micro feedback (hovers, clicks) 200 300ms Small transitions (toggles, dropdowns) 300 500ms Medium transitions (modals, page changes) 500ms+ Complex choreographed animations 3. Easing Functions Quick Start: Button Microinteraction Interaction Patterns 1. Loading States Skeleton Screens : Preserve layout while loading Progress Indicators : Show determinate progress 2. State Transitions Toggle with smooth transition : 3. Page Transitions Framer Motion layout animations : 4. Feedback Patterns Ripple effect on click : 5. Gesture Interactions Swipe to dismiss : CSS Animation Patterns Keyframe Animations CSS Transitions Accessibility Considerations Best Practices 1. Performance First : Use transform and opacity for smooth 60fps 2. Reduce Motion Support : Always respect prefers reduced motion 3. Consistent Timing : Use a timing scale across the app 4. Natural Physics : Prefer spring animations over linear 5. Interruptible : Allow users to cancel long animations 6. Progressive Enhancement : Work without JS animations 7. Test on Devices : Performance varies significantly Common Issues Janky Animations : Avoid animating width , height , top , left Over animation : Too much motion causes fatigue Blocking Interactions : Never prevent user input during animations Memory Leaks : Clean up animation listeners on unmount Flash of Content : Use will change sparingly for optimization