--- name: interaction-design description: Creates intuitive user experiences through feedback patterns, microinteractions, and accessible interaction design. Use when designing loading states, error handling UX, animation guidelines, or touch interactions. license: MIT --- # Interaction Design Create intuitive user experiences through thoughtful feedback and interaction patterns. ## Interaction Patterns | Pattern | Duration | Use Case | |---------|----------|----------| | Microinteraction | 100-200ms | Button press, toggle | | Transition | 200-400ms | Page change, modal | | Entrance | 300-500ms | List items appearing | ## Loading States ```css /* Skeleton loader */ .skeleton { background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%); background-size: 200% 100%; animation: shimmer 1.5s infinite; } @keyframes shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } ``` ```jsx function LoadingState({ isLoading, children }) { if (isLoading) { return
; } return children; } ``` ## Error States ```jsx function ErrorState({ error, onRetry }) { return ({error.message}
{description}
{action && }