emil-design-eng

Reviews and improves UI animations, transitions, and component interactions using design engineering principles.

Updated Aug 10, 2026
One-click install
npx skills add https://github.com/KryptaMedina7/quero-s-home --skill emil-design-eng-kryptamedina7
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: emil-design-eng
Source: https://github.com/KryptaMedina7/quero-s-home/tree/main/.agents/skills/emil-design-eng
Command: npx skills add https://github.com/KryptaMedina7/quero-s-home --skill emil-design-eng-kryptamedina7

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 - 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 identifying issues like transition: all, ease-in on UI elements, missing :active states, and incorrect transform-origin on popovers. - Component & Gesture Guidance: Covers springs, clip-path animations, drag velocity dismissal, stagger delays, reduced-motion accessibility, and performance rules (transform/opacity only, CSS vs JS under load). - Use Case: Paste a React dropdown component and receive a table of concrete fixes, such as replacing a 400ms ease-in transition with a 200ms custom ease-out curve and origin-aware scaling. ## Quick Start Review this dropdown component's animation code and suggest improvements to its easing, duration, and transform origin.

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 instead of ease-in, keep UI animations under 300ms, and add press feedback like transform: scale(0.97) on :active. Ease-out shows immediate movement at the moment users watch most closely, making the interface feel faster at identical durations.

What easing curve should I use for dropdowns and modals?

Use a strong custom ease-out like cubic-bezier(0.23, 1, 0.32, 1) for entering elements such as dropdowns and modals. 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 animations and rapidly triggered UI since they run off the main thread and are interruptible. Framer Motion's x/y shorthand props are not hardware-accelerated; use the full transform string or springs for interruptible gesture-driven motion.

Why does my popover animation look wrong when it opens?

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 at all?

Skip animation for actions performed 100+ times daily, such as keyboard shortcuts and command palette toggles, since animation makes them feel slow. Reduce or remove animation for elements seen tens of times per day like hover effects.

How do I handle animations for users who prefer reduced motion?

Use the prefers-reduced-motion media query to remove transform-based movement while keeping opacity and color transitions that aid comprehension. In React, hooks like useReducedMotion let you conditionally disable positional animation values.