본문으로 건너뛰기
cccskills
무료GitHub에 공개한국어 소개

gsap-performance

GSAP 애니메이션의 끊김을 줄이도록 위치와 투명도 변경, 화면 측정과 업데이트 방식, 불필요한 애니메이션 중지를 검토해 렌더링 부담을 낮춥니다.

원문원문 설명 보기

Official GSAP skill for performance — prefer transforms, avoid layout thrashing, will-change, batching. Use when optimizing GSAP animations, reducing jank, or when the user asks about animation performance, FPS, or smooth 60fps.

AI 평가90점/ 100설치 방법 보기

이럴 때 유용합니다

  • GSAP 애니메이션의 끊김 줄이기
  • 많은 목록 요소의 움직임 개선
  • 마우스 추적 효과의 실행 부담 줄이기
  • 스크롤 효과와 정리 작업 검토

한국어 소개

할 수 있는 일

GSAP 애니메이션의 끊김을 줄이기 위해 렌더링 부담을 주는 구현을 검토합니다. 이동에는 left, top보다 x, y를 사용하고 요소의 위치와 크기를 반복 계산하지 않도록 안내합니다. 위치와 투명도 변경 및 화면 측정과 업데이트를 모으는 방식도 검토합니다. 여러 요소를 차례로 움직이는 stagger, 잦은 업데이트에 쓰는 gsap.quickTo(), 불필요한 애니메이션 중지도 다룹니다.

이럴 때 유용합니다

목록 애니메이션이 무겁거나 마우스 포인터를 따라가는 효과가 매끄럽지 않을 때, 스크롤 효과의 부하를 검토할 때 적합합니다. 기존 코드의 성능 개선에 사용할 수 있습니다.

사용 예시

  • “이 GSAP 이동 애니메이션의 끊김을 줄여 주세요.”
  • “마우스 추적 처리를 gsap.quickTo()로 검토해 주세요.”
  • “화면 밖 애니메이션과 ScrollTrigger 정리를 확인해 주세요.”

주의 사항

GSAP을 사용하는 웹 구현용입니다. will-change의 일괄 지정과 대량 동시 실행을 피하고 성능이 낮은 기기에서도 확인하도록 안내합니다. 60fps 달성을 보장하지 않습니다. 스킬 라이선스는 MIT입니다.

이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.

객관 평가

AI가 SKILL.md의 내용만을 근거로 4가지 관점에서 판정했습니다. 스타 수나 인기도는 판정에 넣지 않았습니다.

지시의 명확성언제 쓰고 무엇을 하는지 알 수 있는가
A양호GSAP 끊김과 렌더링 부담을 개선하는 용도 및 검토할 구현 방식이 명시되어 있습니다.
절차의 구체성절차·입출력·예시가 구체적으로 적혀 있는가
A양호x와 y로의 대체, 읽기와 쓰기 분리, quickTo 코드 예시와 불필요한 애니메이션 중지를 제시합니다.
안전성전송·삭제·명령 실행 등을 명시하고 있는가
A양호설명된 작업은 화면 렌더링과 애니메이션 중지이며 외부 전송이나 파일 삭제는 없습니다.
도입의 용이성필요한 도구나 API 키가 적고 적혀 있는가
B일부 부족GSAP과 ScrollTrigger를 전제로 설명하지만 설치 절차는 기재되어 있지 않습니다.

총점은 각 항목을 A=25점, B=15점, C=5점으로 더한 값입니다. 2026년 10월 20일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.

평가가 다르다고 생각되면 재검토를 요청하기

어느 항목이 왜 다르다고 생각하는지 적어 주세요. 로그인은 필요 없습니다. SKILL.md와 대조해 평가를 다시 만들고 이곳에 반영합니다.

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

포함된 파일(3)

  • SKILL.md4.6 KB
  • LICENSE1.0 KB
  • SOURCES.md818 B

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

GSAP Performance

Curated from GreenSock's official GSAP skills: https://github.com/greensock/gsap-skills

When to Use This Skill

Apply when optimizing GSAP animations for smooth 60fps, reducing layout/paint cost, or when the user asks about performance, jank, or best practices for fast animations.

Related skills: Build animations with gsap-core (transforms, autoAlpha) and gsap-timeline; for ScrollTrigger performance see gsap-scrolltrigger.

Prefer Transform and Opacity

Animating transform (x, y, scaleX, scaleY, rotation, rotationX, rotationY, skewX, skewY) and opacity keeps work on the compositor and avoids layout and most paint. Avoid animating layout-heavy properties when a transform can achieve the same effect.

  • ✅ Prefer: x, y, scale, rotation, opacity.
  • ❌ Avoid when possible: width, height, top, left, margin, padding (they trigger layout and can cause jank).

GSAP’s x and y use transforms (translate) by default; use them instead of left/top for movement.

will-change

Use will-change in CSS on elements that will animate. It hints the browser to promote the layer.

will-change: transform;

Batch Reads and Writes

GSAP batches updates internally. When mixing GSAP with direct DOM reads/writes or layout-dependent code, avoid interleaving reads and writes in a way that causes repeated layout thrashing. Prefer doing all reads first, then all writes (or let GSAP handle the writes in one go).

Many Elements (Stagger, Lists)

  • Use stagger instead of many separate tweens with manual delays when the animation is the same; it’s more efficient.
  • For long lists, consider virtualization or animating only visible items; avoid creating hundreds of simultaneous tweens if it causes jank.
  • Reuse timelines where possible; avoid creating new timelines every frame.

Frequently updated properties (e.g. mouse followers)

Prefer gsap.quickTo() for properties that are updated often (e.g. mouse-follower x/y). It reuses a single tween instead of creating new tweens on each update.

let xTo = gsap.quickTo("#id", "x", { duration: 0.4, ease: "power3" }),
    yTo = gsap.quickTo("#id", "y", { duration: 0.4, ease: "power3" });

document.querySelector("#container").addEventListener("mousemove", (e) => {
  xTo(e.pageX);
  yTo(e.pageY);
});

ScrollTrigger and Performance

  • pin: true promotes the pinned element; pin only what’s needed.
  • scrub with a small value (e.g. scrub: 1) can reduce work during scroll; test on low-end devices.
  • Call ScrollTrigger.refresh() only when layout actually changes (e.g. after content load), not on every resize; debounce when possible.

Reduce Simultaneous Work

  • Pause or kill off-screen or inactive animations when they’re not visible (e.g. when the user navigates away).
  • Avoid animating huge numbers of properties on many elements at once; simplify or sequence if needed.

Best practices

  • ✅ Animate transform and opacity; use will-change in CSS only on elements that animate.
  • ✅ Use stagger instead of many separate tweens with manual delays when the animation is the same.
  • ✅ Use gsap.quickTo() for frequently updated properties (e.g. mouse followers).
  • ✅ Clean up or kill off-screen animations; call ScrollTrigger.refresh() when layout changes, debounced when possible.

Do Not

  • ❌ Animate width/ height/ top/ left for movement when x/ y/ scale can achieve the same look.
  • ❌ Set will-change or force3D on every element “just in case”; use for elements that are actually animating.
  • ❌ Create hundreds of overlapping tweens or ScrollTriggers without testing on low-end devices.
  • ❌ Ignore cleanup; stray tweens and ScrollTriggers keep running and can hurt performance and correctness.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Create a three-scene video composition in a retro pixel style using a Hyperframes HTML template. Customize titles, labels, and colors while preserving scene transitions, short scene durations, and repeatable animation timing.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Create a retro pixel presentation video
  • Customize a three-scene video template
  • Preview scene transitions and motion in HTML
nexu-io/open-design10.3만2026년 10월 20일 업데이트

Create and revise headlines, descriptions, and main text for paid social and search ads. Use it to develop ad copy options and refine wording through repeated rounds of revision.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Drafting headlines for paid social ads
  • Creating descriptions for search ads
  • Revising the main text of an ad
nexu-io/open-design10.3만2026년 10월 20일 업데이트

Create a three-page editorial motion sequence with dark backgrounds, serif typography, staged text reveals, and chapter transitions. The result is a single HTML file suited to fashion-inspired storytelling and short visual presentations.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Creating a fashion-inspired motion presentation
  • Presenting a short story across three pages
  • Applying existing brand rules to a dark editorial sequence
nexu-io/open-design10.3만2026년 10월 20일 업데이트

Inspect and test web pages through a browser automation command-line tool. Navigate, click, enter text, capture screenshots, and extract page details, with a focus on checking local OpenDesign previews and reviewing web app quality.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Checking local OpenDesign previews
  • Testing clicks and text entry in web apps
  • Capturing page or element screenshots
nexu-io/open-design10.3만2026년 10월 20일 업데이트

Plan an AI music album from its concept through lyric drafts, track order, and export. Intended for independent album experiments and brand soundtracks, with the full production workflow provided through a separately installed upstream bundle.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Planning an experimental independent album
  • Drafting lyrics around an album concept
  • Deciding the running order of tracks
nexu-io/open-design10.3만2026년 10월 20일 업데이트

Create generative art, or images made with programmed rules, using p5.js. Fixed random seeds make each rendering reproducible, supporting procedural posters, still images that suggest motion, and studies of artistic frame composition.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Posters generated with programmed rules
  • Still images that suggest motion
  • Studies of artistic frame composition
nexu-io/open-design10.3만2026년 10월 20일 업데이트

nexu-io의 스킬 모두 보기

이 스킬의 문제 신고