사용 가이드로 건너뛰기
emil-design-eng작성자 Emil Kowalski

Emil Design Eng 스킬.

UX 리서치를 위한 Claude Code 및 Codex skill: UI 완성도, 컴포넌트 디자인, 애니메이션 결정에 대한 Emil Kowalski의 철학입니다.

  • UX 및 리서치
emilkowalski/skills · skills/emil-design-eng/SKILL.mdSKILL.md
--- name: emil-design-eng description: This skill encodes Emil Kowalski's philosophy on UI polish, component design, animation decisions, and the invisible details that make software feel great. --- ## Initial Response ## Core Philosophy ## Review Format (Required) ## The Animation Decision Framework ## Spring Animations ## Component Building Principles
업스트림 파일에서 2026-09-14에 읽은 전문 및 섹션 제목 · 전체 27,130자

01 기능

Claude Code와 Codex에서 emil-design-eng 스킬이 하는 일

요약, 워크플로, 산출물을 모두 해당 스킬의 SKILL.md에서 그대로 읽어 정리한 내용입니다.

SKILL.md에서2026-09-14 읽음 · 실행 기록 아님

스킬 자체의 표현으로

이 스킬은 코딩 에이전트에게 Emil Kowalski의 디자인 엔지니어링 판단력을 인터페이스 작업에 적용할 수 있게 해줍니다: 무언가를 애니메이션화해야 하는지, 어떤 이징과 지속 시간을 사용해야 하는지, 그리고 반응성 있게 느껴지는 컴포넌트를 어떻게 만들어야 하는지를 판단합니다. 엄격한 기본값을 설정합니다 — UI 애니메이션은 300ms 이하, 내장 CSS 이징 대신 커스텀 cubic-bezier 곡선 사용, ease-in 절대 사용 금지, scale(0) 등장 절대 사용 금지, 팝오버는 트리거로부터 확대되도록 합니다.

또한 스프링, clip-path 기법, 드래그 및 제스처 처리, GPU 성능 규칙, 모션 감소, 그리고 코드 리뷰를 위한 필수 Before/After 마크다운 표도 다룹니다. 일반적인 애니메이션 조언보다 취향에 기반한 인터페이스 결정을 원하는 디자이너와 개발자를 위한 스킬입니다.

산출물

  • 발견된 문제마다 한 행씩, Before, After, Why 열로 구성된 마크다운 리뷰 표
  • 권장 커스텀 이징 곡선을 담은 바로 붙여넣을 수 있는 CSS 변수
  • Apple 스타일 또는 전통적인 물리 파라미터 방식의 스프링 설정 객체
  • 리뷰 체크리스트 카테고리에서 도출한 우선순위 수정 목록
예시 프롬프트 보기 ↗

작동 방식

  1. 01
    애니메이션을 빈도에 따라 게이트하기

    애니메이션 코드를 작성하기 전에, 사용자가 해당 인터랙션을 얼마나 자주 마주할지 결정합니다.

  2. 02
    목적을 명시하기

    모든 애니메이션은 왜 애니메이션화하는지에 대한 답을 유효한 목록 중에서 제시해야 합니다: 공간적 일관성, 상태 표시, 설명, 피드백, 급격한 변화 방지.

  3. 03
    커스텀 곡선 선택하기

    요소가 진입하는지, 퇴장하는지, 이동하는지, 아니면 색상만 변경되는지에 따라 이징을 선택한 다음, 내장 곡선을 더 강한 커스텀 cubic-bezier로 교체합니다.

  4. 04
    지속 시간 설정하기

    표의 요소 유형에 맞춰 지속 시간을 맞춥니다 — 버튼 누름은 100-160ms, 드롭다운은 150-250ms, 모달은 200-500ms이며, UI는 300ms 상한선을 넘지 않도록 합니다.

  5. 05
    컴포넌트 기본값 적용하기

    버튼은 :active 상태에서 0.97로 축소되고, 등장 애니메이션은 scale(0)이 아닌 0.95에서 불투명도와 함께 시작하며, 팝오버는 트리거 위치에서 확대되지만 모달은 중앙에 고정됩니다.

  6. 06
    효과가 있을 때만 스프링 사용하기

    스프링은 관성이 있는 드래그, 중단 가능한 제스처, 의도적으로 장식적인 인터랙션에 적합합니다.

02 적합성 확인

emil-design-eng Skill 사용 시기

이러한 종류의 UX 연구 작업일 때 Claude Code 또는 Codex에서 emil-design-eng skill을 사용하십시오. 적합성과 한계는 skill 자체 파일에서 가져온 것입니다.

적합한 경우

  • 모호한 피드백이 아니라 구체적인 수정 표를 얻기 위해 기존 UI 코드를 검토하는 경우
  • 작은 디테일이 쌓여 제대로 느껴지는 인터페이스가 되는 컴포넌트를 만드는 경우
  • 드래그한 거리뿐 아니라 플릭 속도에 따라 해제 여부가 결정되어야 하는 드래그 및 스와이프 작업
  • 메인 스레드가 바쁠 때 JS 애니메이션이 프레임을 떨어뜨리는, 성능에 민감한 인터페이스

한계 인지하기

  • 어디에나 튕기는 스프링을 쓰는 경우: 대부분의 UI 맥락에서는 바운스를 피하고 드래그로 닫기나 유쾌한 인터랙션에만 남겨둡니다
  • 기능적인 데이터 시각화에 장식적인 모션을 넣는 경우, 애니메이션이 없는 것이 더 나을 때
  • 불투명도와 높이 조합에 대한 공식을 원하는 사람; 파일에는 이것이 시행착오라고 명시되어 있습니다
  • 모션 축소를 애니메이션 전면 제거로 취급하는 것, 파일에서 명확히 거부하는 부분

제공할 사항

  • 지금 작성하려는 애니메이션이 프레임워크는 애니메이션 코드를 작성하기 전에 네 가지 질문에 순서대로 답할 것을 요구합니다: 애니메이션을 넣을지, 왜 넣는지, 어떤 이징을 쓸지, 얼마나 빠르게 할지.
  • 사용자가 얼마나 자주 보게 될지빈도는 첫 번째 질문이며 전체 판단을 좌우합니다. 애니메이션을 전혀 넣지 않는 것부터 즐거움을 더할 수 있는 허용까지 결정합니다.
  • 지원할 브라우저 목표등장 애니메이션은 지원되는 경우 @starting-style을 사용하고, 그렇지 않으면 data-mounted 속성 패턴으로 대체됩니다.

03 스킬 내부

emil-design-eng 스킬이 Claude Code와 Codex에 부여하는 규칙

에이전트에게 SKILL.md가 설정하는 6가지 구체적인 지침, 기본값 및 제한 사항입니다 — 결과를 바꾸는 파일의 핵심 부분입니다.

  1. ease-in을 절대 사용하지 않기

    ease-in은 초기 움직임을 지연시키는데, 이는 사용자가 가장 주의 깊게 보는 바로 그 순간이므로, 300ms ease-in 드롭다운은 같은 지속 시간의 ease-out보다 더 느리게 느껴집니다.

  2. scale(0)에서 등장시키지 않기

    실제 세계에서는 어떤 것도 완전히 사라지고 다시 나타나지 않습니다. 등장 애니메이션은 scale(0.9) 이상에서 불투명도와 함께 시작하며, 누름 시 축소는 0.95-0.98로 미세하게 유지됩니다.

  3. 모달은 중앙 원점을 유지합니다

    팝오버는 Base UI의 var(--transform-origin)을 사용해 트리거 위치로 transform-origin을 설정해야 하지만, 모달은 트리거에 고정되어 있지 않으므로 명확한 예외입니다.

  4. 리뷰는 실제 표를 사용합니다

    UI 리뷰는 Before, After, Why 열을 갖춘 실제 마크다운 표를 출력해야 하며, 이슈마다 한 행씩 작성합니다. Before:와 After:를 별도 줄에 나열하는 목록 형식은 잘못된 형식입니다.

  5. 호버 동작은 미디어 쿼리로 제한합니다

    터치 기기는 탭 시 호버를 발생시켜 잘못된 판정을 만들기 때문에, 호버 애니메이션은 @media (hover: hover) and (pointer: fine) 안에 넣습니다.

  6. 스태거는 짧고 논블로킹으로 유지합니다

    스태거 지연은 항목 간 30-80ms로 실행합니다. 더 긴 지연은 인터페이스를 느리게 느껴지게 하며, 스태거는 장식적 요소이므로 재생 중에도 상호작용을 절대 막아서는 안 됩니다.

04 활용하기

Claude Code 또는 Codex에 emil-design-eng 설치

npx skills add 명령 한 번 실행 후, 에이전트에서 첫 번째 작업을 수행하고 결과 체크리스트를 확인합니다.

Claude Code, Codex 또는 사용 중인 Agent에 emil-design-eng 추가

프로젝트에서 실행합니다. 설치 프로그램이 어떤 에이전트에 추가할지 묻습니다.

Terminal
npx skills add https://github.com/emilkowalski/skills --skill emil-design-eng

skills/emil-design-eng/SKILL.md에 대한 일반적인 skills CLI 형식이며, 저장소는 자체 경로를 문서화할 수 있습니다.

스킬에 첫 UX 리서치 작업 제공

스킬 자체의 용어로 작성되었습니다. 대괄호 부분은 각자의 자료로 교체합니다.

Starter prompt
Review the code for [the dropdown and the popover] in [component file]. The dropdown opens with ease-in over 300ms, the popover scales from center, and the entering panel animates from scale(0). Use the Before/After format and tell me what to change and why.

출처: 스킬 자체의 용어로 SKILL.md에서 작성했습니다.

첫 번째 결과 확인

SKILL.md 자체가 올바른 결과의 모습으로 제시하는 내용:

  • 불완전한 부분은 하루 떨어져 있다가 보면 더 쉽게 눈에 띄므로, 다음 날 새로운 시각으로 작업물을 다시 살펴봅니다
  • 타이밍 문제를 잡기 위해 지속 시간을 일시적으로 정상 속도의 2-5배로 늦추거나 브라우저 애니메이션 인스펙터를 사용합니다
  • Chrome DevTools에서 애니메이션을 프레임 단위로 재생하여 정상 속도에서는 보이지 않는 조정 문제를 확인합니다
  • 드로어와 스와이프 제스처는 실제 기기에서 테스트하며, USB로 휴대폰을 로컬 개발 서버에 연결합니다
  • 슬로 모션으로 애니메이션 속성들이 서로 동기화되어 있는지, 원점과 이징이 적절한지 확인합니다

OpenDesign에서는 emil-design-eng가 기본 포함되어 있습니다: Plugins → Skills에서 상단 바에서 선택하십시오.

05 오픈 소스, 추적 가능

출처, 라이선스 및 검증

이 페이지의 사실이 어디에서 왔으며 언제 마지막으로 확인되었는지 안내합니다.

Repository
github.com/emilkowalski/skills 브랜치 main
스킬 파일
skills/emil-design-eng/SKILL.md 검증 시 기록된 콘텐츠 체크섬, 커밋 d23d7f8
License
MIT LICENSE에서 확인.
리포지토리 스타
37,516 이 카탈로그에 9개의 skill을 포함하는 전체 emilkowalski/skills 저장소에 대해 2026-09-14에 촬영된 GitHub 스냅샷입니다. emil-design-eng에 대한 평가 또는 사용 횟수가 아닙니다.
OpenDesign에서 검증됨
2026-09-14 소스 파일, 경로, 라이선스 텍스트 및 별 개수가 확인되었습니다. OpenDesign 메인에 번들로 포함됨(2026-08-28 확인됨); 이 페이지에 실시간 실행이 기록되지 않았습니다.

SKILL.md 내부

  1. 핵심 철학취향은 훈련될 수 있으며, 눈에 보이지 않는 디테일들이 누적되고, 아름다움은 실질적인 차별 요소입니다.
  2. 리뷰 형식(필수)Before/After/Why 마크다운 표를 요구하며 금지된 목록 형식을 함께 보여줍니다.
  3. 애니메이션 결정 프레임워크빈도, 목적, 이징, 지속 시간이라는 네 가지 순차적 질문과 체감 성능을 다룹니다.
  4. 스프링 애니메이션스프링이 적합한 경우, useSpring을 이용한 마우스 트래킹, 두 가지 구성 방식을 다룹니다.
  5. 컴포넌트 구축 원칙누름 피드백, scale(0) 회피, 팝오버 원점, 툴팁 지연, 키프레임 대신 트랜지션 사용, 블러를 다룹니다.
  6. CSS Transform 마스터하기퍼센트 기반 translate, 자식 요소 스케일링, 3D 깊이, transform-origin 앵커를 다룹니다.
  7. 애니메이션을 위한 clip-path오버레이용 인셋 리빌, 탭, 홀드-투-딜리트, 스크롤 리빌, 비교 슬라이더를 다룹니다.
  8. 제스처 및 드래그 상호작용속도 기반 해제, 경계 댐핑, 포인터 캡처, 멀티터치 방지, 마찰을 다룹니다.
  9. 성능 규칙transform과 opacity만 애니메이션하고, CSS 변수 재계산을 피하며, 부하가 클 때는 CSS를 선호합니다.
  10. 접근성모션 축소 설정 시 opacity와 색상은 유지하고 움직임은 제거합니다; 호버는 미디어 쿼리로 제한됩니다.
  11. Sonner 원칙(사랑받는 컴포넌트 만들기)DX, 기본값, 네이밍, 엣지 케이스, 트랜지션, 문서화에 관한 Sonner의 여섯 가지 원칙입니다.
  12. 리뷰 체크리스트transition-all부터 스태거 누락까지, 흔한 문제와 그에 대한 처방된 해결책을 정리한 표입니다.
스킬 자체 설명
"이 스킬은 UI 완성도, 컴포넌트 설계, 애니메이션 결정 및 소프트웨어를 훌륭하게 만드는 보이지 않는 디테일에 대한 Emil Kowalski의 철학을 담고 있습니다."

SKILL.md의 전반부 설명입니다. 전체 파일은 약 27,130자입니다. GitHub에서 전체 파일 읽기.

Emil Design Eng

실제 UX 연구 작업에서 emil-design-eng 실행하기.

emil-design-eng 스킬은 OpenDesign에 내장되어 있습니다. 앱을 다운로드하고 Plugins → Skills에서 스킬을 선택한 후 위의 프롬프트를 붙여넣고 결과 전에 계획을 확인하십시오.

터미널
npx skills add https://github.com/emilkowalski/skills --skill emil-design-eng