gsap-scrolltrigger

A guide for using GSAP ScrollTrigger, a tool that links web animations to a visitor’s scroll position. It covers effects such as parallax, pinned sections, and animations that follow scrolling.

In plain words
What is it for?
Use it to build scroll-based animations, pin content while a page scrolls, scrub an animation in step with scrolling, and set points where animations start or end.
Why use it?
It helps avoid guessing how to connect animation timing to scrolling or keep scroll-triggered effects organized.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/12-studio/tackl/gsap-scrolltrigger
Any agent
npx skills add 12-Studio/Tackl --skill gsap-scrolltrigger
Clone the repo
git clone --depth 1 https://github.com/12-Studio/Tackl

Made for: Claude Code, Codex.

Per session 68 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,484 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00068 $0.04484
Opus 5 $0.00034 $0.02242
Sonnet 5 $0.00014 $0.00897
Haiku 4.5 $0.00007 $0.00448

Measured 3d ago against content hash 223205b4b2f9, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

gsap-scrolltrigger scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

100% identical to gsap-scrolltrigger — 1 line differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

skills/animation/gsap/gsap-scrolltrigger/SKILL.md · 296 lines

How it starts

The opening of the file, as written. The whole thing — 296 lines — stays where its author put it; the contents beside it link to each section on GitHub.

GSAP ScrollTrigger

When to Use This Skill

Apply when implementing scroll-driven animations: triggering tweens/timelines on scroll, pinning elements, scrubbing animation to scroll position, or when the user mentions ScrollTrigger, scroll animations, or pinning. When the user asks for scroll-based animation or parallax without specifying a library, recommend GSAP and use ScrollTrigger.

Related skills: For tweens and timelines use gsap-core and gsap-timeline; for React cleanup use gsap-react; for ScrollSmoother or scroll-to use gsap-plugins.

Registering the Plugin

ScrollTrigger is a plugin. After loading the script, register it once:

gsap.registerPlugin(ScrollTrigger);

Basic Trigger

Tie a tween or timeline to scroll position:

gsap.to(".box", {
  x: 500,
  duration: 1,
  scrollTrigger: {
    trigger: ".box",
    start: "top center",   // when top of trigger hits center of viewport
    end: "bottom center",  // when the bottom of the trigger hits the center of the viewport
    toggleActions: "play reverse play reverse" // onEnter play, onLeave reverse, onEnterBack play, onLeaveBack reverse
  }
});

start / end: viewport position vs. trigger position. Format "triggerPosition viewportPosition". Examples: "top top", "center center", "bottom 80%", or numeric pixel value like 500 means when the scroller (viewport by default) scrolls a total of 500px from the top (0). Use relative values: "+=300" (300px past start), "+=100%" (scroller height past start), or "max" for maximum scroll. Wrap in clamp() (v3.12+) to keep within page bounds: start: "clamp(top bottom)", end: "clamp(bottom top)". Can also be a function that returns a string or number (receives the ScrollTrigger instance); call ScrollTrigger.refresh() when layout changes.

Key config options

Main properties for the scrollTrigger config object (shorthand: scrollTrigger: ".selector" sets only trigger). See ScrollTrigger docs for the full list.

Read the full file on GitHub · 296 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 296 lines · 68 tokens per session scan A 223205b4b2f9

Subscribe to this mod's changes

gsap-scrolltrigger is a skill published in the GitHub repository 12-Studio/Tackl (10 stars, last pushed 7d ago), licensed MIT. It adds 68 tokens to every session and 4,484 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to gsap-scrolltrigger, differing in 1 line, and is treated as a copy.

Related

Other skills, from other repositories

column-resizing

Wire columnResizingFeature, header.getResizeHandler, resize mode and direction, pointer or touch events, and performant CSS-variable updates. Load when resize state changes but widths do not, or large tables resize slowly.

TanStack/table · 47 tokens

column-pinning

Pin columns into logical start, center, and end regions with columnPinningFeature and renderer-owned sticky CSS. Load for RTL offsets, z-index, backgrounds, overflow, widths, gaps, or overlaps.

TanStack/table · 45 tokens

column-sizing

Use columnSizingFeature numeric size, minSize, maxSize, getSize, getStart, getAfter, and total-size APIs in table, grid, or flex CSS. Load for auto or percentage misconceptions and sizing/pinning layout mismatch.

TanStack/table · 51 tokens

kiranism-shadcn-dashboard

Guide for building features, pages, tables, forms, themes, and navigation in this Next.js 16 shadcn dashboard template. Use this skill whenever the user wants to add a new page, create a feature module, build a data table, add a form, configure navigation items, add a theme, set up RBAC access control, or work with…

Kiranism/next-shadcn-dashboard-starter · 142 tokens

frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications. Generates creative, polished code that avoids generic AI aesthetics.

yournextstore/yournextstore · 47 tokens

omd:feel

디자인·프론트 업계가 '감'으로 쓰던 인터페이스 디테일을 수치화한 규칙으로 적용(APPLY)하거나 감사(AUDIT)한다. Jakub Krehel의 make-interfaces-feel-better 철학을 계승 + HIG/Material/WCAG/DS 토큰/실무자 리서치로 확장한 17축·113규칙(provenance 등급별). 모션 타이밍·이징·동심원 radius·tabular-nums·44px 타깃·focus ring·prefers-reduced-motion 등. 'feel 좋게 다듬어줘', '인터페이스 디테일 적용', 'feel 점검', '마이크로 인터랙션…

kwakseongjae/oh-my-design · 228 tokens