emil-design-eng

Reviews and improves UI animations, transitions, and component interactions using CSS and Motion patterns.

Updated Sep 7, 2026
One-click install
npx skills add https://github.com/raphaelmans/spectralpointengineering --skill emil-design-eng-raphaelmans
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: emil-design-eng
Source: https://github.com/raphaelmans/spectralpointengineering/tree/main/.skillshare/skills/emil-design-eng
Command: npx skills add https://github.com/raphaelmans/spectralpointengineering --skill emil-design-eng-raphaelmans

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 those invisible details in UI code. ## Core Features & Use Cases - Animation Decision Framework: Decide whether an element should animate at all based on usage frequency, then choose the right easing curve, duration, and technique (CSS transitions, springs, WAAPI). - Structured UI Reviews: Get Before/After/Why markdown tables that pinpoint issues like transition: all, ease-in on dropdowns, missing :active press states, and wrong transform-origin on popovers. - Component Craft Guidance: Apply patterns for tooltips, drawers, toasts, hold-to-delete buttons, stagger animations, drag gestures with velocity-based dismissal, and reduced-motion accessibility. - Use Case: Paste a React component with a dropdown or modal and ask for a review; receive a table of concrete CSS fixes with reasoning grounded in perceived performance and motion design principles. ## Quick Start Ask the assistant to review your button, popover, or drawer component code for animation and interaction issues.

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 UI animations 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 dropdowns and modals?

Use ease-out for entering elements, such as cubic-bezier(0.23, 1, 0.32, 1), since it starts fast and feels responsive. For on-screen movement use ease-in-out like cubic-bezier(0.77, 0, 0.175, 1); never use ease-in for UI.

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 that x/y shorthand props are not hardware-accelerated; use full transform strings instead.

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 start from scale(0.95) with opacity 0 rather than scale(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, useReducedMotion from Motion lets you conditionally disable positional animation values.