emil-design-eng

Reviews and improves UI animation, easing, and interaction code using design engineering principles.

Updated Jul 15, 2026
One-click install
npx skills add https://github.com/Alex918-stack/papertrader --skill emil-design-eng-alex918-stack
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: emil-design-eng
Source: https://github.com/Alex918-stack/papertrader/tree/main/agent/skills/emil-design-eng
Command: npx skills add https://github.com/Alex918-stack/papertrader --skill emil-design-eng-alex918-stack

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Interfaces often feel sluggish or unpolished because of subtle animation mistakes: wrong easing curves, excessive durations, scale-from-zero entrances, and non-interruptible keyframes. This Skill encodes Emil Kowalski's design engineering philosophy to help you diagnose and fix these invisible details in UI code. ## Core Features & Use Cases - Structured UI Reviews: Audits animation and interaction code and outputs a Before/After/Why markdown table with concrete fixes for issues like transition: all, ease-in usage, and missing :active states. - Animation Decision Framework: Guides whether an element should animate at all, which easing curve to use, and how long it should run based on interaction frequency and purpose. - Implementation Guidance: Covers springs, clip-path animations, gesture velocity handling, hardware acceleration, stagger timing, and reduced-motion accessibility. - Use Case: Paste a dropdown or toast component and receive a table of specific fixes, such as replacing transform: scale(0) with scale(0.95) plus opacity, or switching Framer Motion x props to hardware-accelerated transform strings. ## Quick Start Ask the assistant to review your UI component's animation code and list what feels off with concrete before-and-after fixes.

Frequently Asked Questions about emil-design-eng

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make UI animations feel more responsive?

Use ease-out curves so movement starts immediately, keep durations under 300ms, and add press feedback like transform: scale(0.97) on :active. Avoid ease-in, which delays initial movement and makes interfaces feel sluggish.

What easing curve should I use for dropdowns and popovers?

Use a strong custom ease-out such as cubic-bezier(0.23, 1, 0.32, 1) for entering elements. Built-in CSS easings are too weak; resources like easing.dev offer stronger variants of standard curves.

Should I use CSS transitions or Framer Motion for animations?

Use CSS transitions for predetermined, rapidly-triggered UI animations since they run off the main thread and are interruptible. Use Framer Motion springs for gestures and interruptible drag interactions, but prefer full transform strings over x/y shorthand for hardware acceleration.

Why does my popover animation look wrong when opening?

Popovers often use the default transform-origin: center, making them scale from the middle instead of their trigger. Set transform-origin to the trigger location, and never start entrance animations from scale(0); begin at scale(0.95) with opacity 0.

When should I not animate a UI element?

Skip animation for actions performed hundreds of times daily, such as keyboard shortcuts and command palette toggles. Animation on high-frequency interactions makes the interface feel slow and disconnected from user input.

How do I handle animations for users with reduced motion preferences?

Use the prefers-reduced-motion media query to remove transform-based movement while keeping opacity and color transitions that aid comprehension. Reduced motion means gentler animation, not zero animation.