emil-design-eng

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

Updated Aug 25, 2026
One-click install
npx skills add https://github.com/KlyrhonMiko/kly-skills --skill emil-design-eng-klyrhonmiko
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: emil-design-eng
Source: https://github.com/KlyrhonMiko/kly-skills/tree/main/data/skills/emil-design-eng
Command: npx skills add https://github.com/KlyrhonMiko/kly-skills --skill emil-design-eng-klyrhonmiko

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Interfaces often feel sluggish or unpolished because of subtle animation mistakes like ease-in curves, scale(0) entrances, or transitions over 300ms. This Skill encodes Emil Kowalski's design engineering philosophy to help you identify and fix these invisible details in UI code. ## Core Features & Use Cases - Animation Decision Framework: Determines whether an element should animate at all, which easing curve to use, and how fast it should run based on usage frequency and purpose. - Structured UI Code Review: Produces Before/After/Why markdown tables covering transitions, transform-origin, spring configuration, clip-path usage, and gesture handling. - Performance and Accessibility Rules: Enforces GPU-friendly transform/opacity animations, hardware acceleration in Framer Motion, prefers-reduced-motion support, and hover media queries for touch devices. - Use Case: Paste a dropdown or modal component and receive a table of concrete fixes, such as replacing transition: all 300ms with transition: transform 200ms ease-out and setting popover transform-origin to its trigger. ## Quick Start Ask the assistant to review your UI component's animation code and list the issues with 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 for entering elements, keep durations under 300ms, and add transform: scale(0.97) on :active for press feedback. Avoid ease-in, which delays initial movement and makes interfaces feel sluggish.

What easing curve should I use for CSS animations?▼

Use ease-out for entering elements, ease-in-out for on-screen movement, and linear for constant motion. Prefer custom cubic-bezier curves like cubic-bezier(0.23, 1, 0.32, 1) since built-in CSS easings are too weak.

Should I use CSS transitions or Framer Motion for animations?▼

Use CSS transitions for predetermined animations since they run off the main thread and stay smooth under load. Use Framer Motion springs for interruptible gestures, but note its x/y shorthand props are not hardware-accelerated.

Why does my popover animation look wrong when opening?▼

Popovers default to transform-origin: center, which makes them scale from the wrong point. Set transform-origin to the trigger location, and never animate from scale(0); start from scale(0.95) with opacity: 0 instead.

When should I not animate a UI element?▼

Skip animation for actions repeated 100+ times daily, such as keyboard shortcuts and command palette toggles. Animation on high-frequency actions 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.