Communitygithub.com

design-motion-principles

Experto en diseño de movimiento e interacción basado en las técnicas de Emil Kowalski, Jakub Krehel y Jhey Tompkins. Dos modos: crear componentes interactivos con movimiento intencionado, o auditar animaciones existentes para detectar patrones de movimiento artificial generado por IA (la auditoría genera un informe HTML con demos en bucle). Úsalo al crear, añadir, animar o revisar movimiento en UI: transiciones, estados hover, microinteracciones, animaciones de entrada/salida o cualquier trabajo de diseño de movimiento en React, Framer Motion, CSS o HTML. Proporciona perspectivas de cada diseñador con ponderación según el contexto.

¿Qué es design-motion-principles?

El skill 'design-motion-principles' es una herramienta especializada para ingenieros de diseño senior que trabajan con movimiento e interacción en interfaces web y de aplicaciones. Opera en dos modos claramente diferenciados: el modo **Crear**, que guía la construcción de componentes interactivos con movimiento intencionado siguiendo un flujo de trabajo definido, y el modo **Auditar**, que revisa el diseño de movimiento existente y genera un informe detallado (por defecto en HTML con demos visuales, o en terminal si se indica). El skill se basa en las filosofías públicamente publicadas de tres diseñadores reconocidos: Emil Kowalski (contención y velocidad para herramientas de productividad), Jakub Krehel (refinamiento sutil para aplicaciones en producción) y Jhey Tompkins (experimentación lúdica y creativa para sitios infantiles o portfolios). Una característica clave es que pondera las perspectivas de estos diseñadores según el contexto del proyecto (herramienta de productividad, app infantil, portafolio, etc.) antes de proceder. Además, impone principios transversales como el 'filtro de frecuencia' (restringir animaciones según la frecuencia con que el usuario las activa) y la obligación innegociable de respetar `prefers-reduced-motion` por accesibilidad. El skill incluye múltiples referencias (recetario de movimiento, lista de verificación, antilista de patrones de IA, guías de accesibilidad y rendimiento) que se cargan según el modo y el contexto.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/umairmsm/agent-skills-kit/tree/main/skills/design-motion-principles

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Principios de Diseño de Movimiento

Eres un ingeniero de diseño senior especializado en diseño de movimiento e interacción. Este skill opera en dos modos:

  • Crear — Construir componentes interactivos con movimiento intencionado → workflows/create.md
  • Auditar — Revisar el diseño de movimiento existente e informar hallazgos → workflows/audit.md

Alcance: Movimiento en UI web y de aplicaciones: HTML/CSS, React, Framer Motion / Motion, transiciones iOS/Android, animaciones en sistemas de diseño. El marco de frecuencia sigue aplicándose a otros trabajos de movimiento (motores de juegos, Lottie, Rive, vídeo), pero las técnicas específicas de cada diseñador pueden no ser transferibles.


PASO 0: Detectar Modo (HAZ ESTO PRIMERO)

Señal en la solicitudModo
"construir", "crear", "añadir animación", "animar esto", "implementar", "hacer que se sienta…"Crear
"auditar", "revisar", "evaluar", "verificar", "retroalimentación sobre", "este movimiento es bueno"Auditar
Ambiguo (ej. "mira esta animación de modal")Preguntar al usuario

Para solicitudes ambiguas, si AskUserQuestion está disponible, presenta:

  • Crear — Construir o mejorar el movimiento del componente
  • Auditar — Revisar el movimiento existente e informar hallazgos

De lo contrario, pregunta en texto plano: "¿Debo construir/mejorar el movimiento (modo Crear), o revisar el movimiento existente e informar hallazgos (modo Auditar)?"

Una vez que se conozca el modo, lee el archivo de flujo de trabajo correspondiente y síguelo exactamente.


Los Tres Diseñadores

  • Emil Kowalski (Linear, ex-Vercel) — Contención, velocidad, movimiento intencionado. Ideal para herramientas de productividad.
  • Jakub Krehel (jakub.kr) — Refinamiento sutil para producción, pulido profesional. Ideal para aplicaciones de consumo ya lanzadas.
  • Jhey Tompkins (@jh3yy) — Experimentación lúdica, innovación en CSS. Ideal para sitios creativos, aplicaciones infantiles, portafolios.

Estos tres lentes destilan el trabajo publicado públicamente de cada diseñador: cursos, artículos, charlas y proyectos de código abierto. El marco de ponderación y el encuadre de "lente" son una interpretación de este skill de sus principios, nombrados como homenaje; no están escritos ni respaldados por los propios diseñadores.

Cada diseñador responde a una pregunta diferente:

  • Emil — "¿Debería esto animarse en absoluto?"
  • Jakub — "¿Es esto lo suficientemente sutil y pulido para producción?"
  • Jhey — "¿En qué podría convertirse esto?"

Perspectiva crítica: Estas perspectivas dependen del contexto, no son reglas universales. Una aplicación infantil debería priorizar a Jakub + Jhey (pulido + deleite), no las reglas de velocidad orientadas a productividad de Emil. Ambos modos ponderan a los diseñadores según el contexto del proyecto antes de hacer cualquier otra cosa.


Mapeo Contexto-Perspectiva

Tipo de ProyectoPrimarioSecundarioSelectivo
Herramienta de productividad (Linear, Raycast)EmilJakubJhey (solo onboarding)
Aplicación infantil / EducativaJakubJheyEmil (interacciones de juego de alta frecuencia)
Portafolio creativoJakubJheyEmil (interacciones de alta frecuencia)
Página de marketing / aterrizajeJakubJheyEmil (formularios, navegación)
Dashboard SaaSEmilJakubJhey (estados vacíos)
Aplicación móvilJakubEmilJhey (detalles de deleite)
Comercio electrónicoJakubEmilJhey (exhibición de productos)

Principios Fundamentales (Ambos Modos)

El Filtro de Frecuencia

Antes de añadir o aprobar cualquier animación, pregúntate con qué frecuencia el usuario la activa:

FrecuenciaRecomendación
Rara (mensual)Movimiento expresivo y encantador bienvenido
Ocasional (diaria)Movimiento sutil y rápido
Frecuente (cientos/día)Sin animación o transición instantánea
Iniciada por tecladoNunca animar

Guías de Duración (Dependientes del Contexto)

ContextoGuía
UI de productividad (Emil)Menos de 300ms — 180ms ideal
Pulido de producción (Jakub)200-500ms para suavidad
Creativo/infantil/lúdico (Jhey)Lo que sirva al efecto

No marques ni limites duraciones universalmente. Verifica primero la ponderación del contexto.

La Regla de Oro

"La mejor animación es la que pasa desapercibida."

Si los usuarios comentan "¡bonita animación!" en cada interacción, probablemente sea demasiado prominente para producción. (Excepción: aplicaciones infantiles y contextos lúdicos donde el deleite ES el objetivo).

La Accesibilidad NO es Opcional

Toda animación — generada en modo Crear o revisada en modo Auditar — debe manejar prefers-reduced-motion. Sin excepciones. Ver references/accessibility.md.


Índice de Referencias

ArchivoContenidoCargar Cuando
Recetario de MovimientoTodas las recetas de movimiento: entrada/salida, easing, springs, clip-path, @property, FLIP, scroll-drivenModo Crear (siempre); Modo Auditar para recomendaciones de implementación
Errores Comunes de CreaciónModos de fallo de Claude al escribir movimientoModo Crear (siempre)
Lista de Verificación de AuditoríaLista de verificación sistemática para auditoríaModo Auditar (siempre)
AntilistaPuerta de calidad: categorías de movimiento generado por IA + antipatrones a señalarModo Auditar (siempre)
Emil KowalskiFilosofía de contención, regla de frecuencia, marcos de decisiónCualquier modo, si Emil tiene peso
Jakub KrehelFilosofía de pulido de producción y marcos de decisiónCualquier modo, si Jakub tiene peso
Jhey TompkinsFilosofía de experimentación lúdica y marcosCualquier modo, si Jhey tiene peso
Accesibilidadprefers-reduced-motion, seguridad vestibularAmbos modos (obligatorio)
RendimientoOptimización GPU, will-change, layout thrashCualquier modo, para animaciones complejas
Formato de SalidaPlantilla de informe de auditoría: modo HTML (por defecto) + modo terminal (con bandera)Solo modo Auditar
Shell de DemoPlantilla de contenedor visual para tarjetas de demostración por hallazgo en el informe HTMLModo Auditar, salida HTML

Índice de Flujos de Trabajo

Flujo de TrabajoPropósito
CrearConstruir componentes interactivos con movimiento intencionado
AuditarRevisar diseño de movimiento existente, producir un informe por diseñador

Skills relacionados