What problem does it solve? Writing animation code often requires repetitive math for value mapping, clamping, snapping, and randomization. This Skill provides correct usage patterns for the gsap.utils helper methods so animations handle ranges, units, and collections without hand-rolled math errors. ## Core Features & Use Cases - Range and Value Math: Use clamp, mapRange, normalize, and interpolate to convert scroll progress, pointer input, or progress values into animation ranges. - Randomization and Snapping: Generate random values with random, snap values to grids or arrays with snap, shuffle arrays, and distribute values across targets with stagger-like control. - Units and Collections: Parse and append units with getUnit and unitize, split colors into RGB or HSL components, scope selectors to components, and convert selectors or NodeLists to arrays with toArray. - Use Case: When building a scroll-driven animation, map scroll progress from 0-1 to a rotation of 0-360 degrees using mapRange, then snap the result to 15-degree increments for a stepped dial effect. ## Quick Start Use the gsap-utils skill to map scroll progress from 0 to 1 into a 0 to 360 degree rotation and snap the output to 15 degree steps.