Skip to content
Kinetic

Catalogue

Every technique in the library, running.

119 techniques across 7 categories. Each tile is the component itself rather than a recording of it, which is why they take turns: the grid runs to a GPU budget, and a tile holds its poster until a slot is worth spending on it. Scroll to one, or hover it, and it takes the next slot.

Components
119
Categories
7
Runtime tiers
4
Zero-dependency
49

119

Category
Runtime
01

Scroll

22

Systems driven by scroll position, velocity, or direction.

Banded Scrollspy Rail

CSS runtime

A tick rail whose active mark widens as a section crosses a 7% band through the middle of the screen.

No dependencies

Batched Blur Reveal

DOM runtime

Cards that enter together focus in as one staggered group instead of arriving as a slab.

gsap

One Reveal Engine, Two Axes

DOM runtime

The same staggered line reveal fires for vertical sections and for panels on a horizontal track.

gsap

Converging Flow Steps

DOM runtime

A process diagram that closes from both ends while the connectors pop in a third of the way through.

gsap

CSS Variable Stagger Reveal

CSS runtime

Groups reveal as they enter their scroll container; the stagger delay is a CSS calc over an index the JS writes once.

No dependencies

Dataset-Driven Parallax

DOM runtime

Layers drift at a rate written on the element itself, over the widest possible scroll window.

gsap

Drag-Throw Scroll

DOM runtime

Grab the page and pull it; let go mid-move and it coasts on, decaying, as far as the flick earned.

lenis

Drag Mapped To Pin Progress

DOM runtime

Drag a pinned horizontal strip and it moves exactly one pixel per pixel, then throws and settles.

gsap

Dual-Direction Scrub Entrance

DOM runtime

Copy rises while a panel slides in from the side, both on one scrub with 600ms of lag.

gsap

Inverse Scroll Scale

DOM runtime

Media enters oversized at 1.25x and settles to exactly 1.0 as it rises through the first 60% of the scroller.

No dependencies

IntersectionObserver Reveal

CSS runtime

One element, one fade-and-rise on entry, no stylesheet and no library — with a single observer shared across every instance.

No dependencies

Single Param Object Timeline

DOM runtime

One plain object holds every animated value; the scroll story is a table of keyframes anchored to real sections.

gsap

Knockout Zoom Pin

DOM runtime

A word the size of the screen shrinks into a headline as you scroll, with the scene showing through its letters.

No dependencies

Lenis On The GSAP Ticker

DOM runtime

Smooth scroll and ScrollTrigger on one clock, with the lag-smoothing line everyone omits.

gsap · lenis

Manufactured Scroll Range

DOM runtime

An empty box N screens tall turns a one-screen scene into a scrollable sequence, with progress as a CSS variable and the index as state.

No dependencies

Mixed Scrub Depth Layers

DOM runtime

Layers separate while you scroll and converge when you stop, because each depth has its own scrub.

gsap

Pinned Horizontal Track

DOM runtime

A section pins while a strip of panels slides sideways, one scroll pixel per track pixel.

gsap

Pre-Scatter Horizontal Gallery

DOM runtime

A pinned strip where each item rests slightly off its slot, flies in from ahead and peels away behind.

gsap

Scroll-Scrubbed Video

DOM runtime

The scroll-to-frame mapping a scrubbed hero actually needs: smoothing, a snap, a frame quantiser and a loop that parks itself.

No dependencies

Scrub Timeline Spine

DOM runtime

A rule that fills as you scroll, with entries alternating either side and reversing on the way back.

gsap

Throttled Scrub To State

DOM runtime

A scrubbed trigger fires 120x a second; a time, distance and frame gate turns that into a handful of React renders.

gsap

Velocity-Deformed Cards

DOM runtime

Cards skew, stretch and trail in proportion to scroll speed, then settle on their own with no easing curve anywhere.

No dependencies

02

WebGL

27

Shader and GPU work — fields, planes, particles, distortion.

Anti-Aliased Point Discs

WebGL runtime

A phyllotaxis field of dots that stay the same weight at every pixel ratio, with no MSAA and no texture.

three

Bayer-Quantised Plasma

WebGL runtime

An iterated domain-warped plasma crushed to eleven grey levels, so the hero reads as a dot-matrix proof.

No dependencies

Bit-Math Bayer8 Dither

WebGL runtime

A smooth gradient crushed to five levels through an 8x8 ordered matrix derived from six integer ops.

No dependencies

Cursor-Reactive Shader Glow

WebGL runtime

A warped-noise atmosphere with a light that trails the cursor, held under a hard luminance ceiling so copy stays readable.

three

Dot-Cloud Score Cylinder

WebGL runtime

Two counter-rotating cylinders of dots — rings, bar lines, notes — drawn from one buffer with no depth buffer.

three

Cylinder Gallery Drum

WebGL runtime

Nineteen planes wrapped around a drum in the vertex shader, spun by wheel or scroll, focus falling off from centre.

three · gsap · lenis

Depth Fade And Travelling Pulse

WebGL runtime

A dot lattice on an arc: z drives alpha and point size together, and a per-column phase sweeps the pulse across the field.

three

Domain-Warped FBM Fog

WebGL runtime

Slow, low-contrast fog that flows rather than fades, with a faint light that trails the cursor.

No dependencies

Dual-Canvas Depth Split

WebGL runtime

One particle field rendered twice with the depth sign flipped, so the text sits inside the field rather than on top of it.

ogl

Fractional Render Scale

WebGL runtime

A field rendered into a backing store 0.6x its box — 36% of the fragments — with a grid measured in texels so the upscale never shows.

three

Fullscreen Triangle Pass

WebGL runtime

One 3-vertex triangle covers the viewport and runs your fragment shader. No three, no ogl, no seam.

No dependencies

GPU Cubic-Bezier Burst

WebGL runtime

Rings of dots that burst on click, every particle solving its own cubic-bezier easing in the vertex shader.

three

Instanced Quad Particles

WebGL runtime

Up to 1800 drifting particles in one draw call — quads rather than point sprites, so each one has its own size, spin and shape.

ogl

Multipass Offscreen Composite

WebGL runtime

Four passes into two render targets — ramp, additive fills, half-size bloom — and one composite that writes the canvas once.

three

In-Shader Mouse Bulge

WebGL runtime

A soft lens that follows the cursor, measured by projecting every vertex to screen space instead of raycasting.

three

Single-Draw Orbit Rings

WebGL runtime

Concentric rings of dots, one bright marker travelling each ring, all of it in a single draw call.

three

Radial Ripple Dot Cloud

WebGL runtime

A dot field with a travelling wave running out of one off-centre point, its density drawn by hand as a B-spline.

three

Realtime Cube EnvMap

WebGL runtime

A metal knot reflecting panels that are actually orbiting it, captured six faces at a time every other frame.

three

Scroll Deformation Wave

WebGL runtime

An image that ripples with scroll speed and bends the other way on the way back, from two sine terms.

three

Spring Lattice Field

WebGL runtime

A CPU damped-spring lattice uploaded as a texture each frame, displacing a procedural grid the cursor can push around.

No dependencies

Stepped Film Grain

WebGL runtime

A transparent grain overlay whose pattern jumps twelve times a second instead of every frame, so it reads as film.

three

Superellipse Text Avoidance

WebGL runtime

A particle field that flows around the headline, held off by a 6-norm superellipse fitted to the measured text box.

ogl

Area-Weighted Surface Particles

WebGL runtime

Any mesh becomes a particle shell of even density, assembling bottom-up, with orbit rings measured off the sampled silhouette.

three

Text-Target Particle Glyphs

WebGL runtime

A particle cloud gathers into a word rasterised from a font already on the page, written left to right, then lets it go.

three

Cover-Fit UV Maths

WebGL runtime

object-fit: cover for a textured quad, solved in UV space so the crop follows a frame that reshapes every frame.

three

Velocity Afterimage Pass

WebGL runtime

Marks that smear into a tail when the pointer moves fast and stay crisp when it slows, from two targets swapping roles.

three

Vertex Shader Cylinder Bend

WebGL runtime

A flat plane wrapped around a cylinder on the GPU, with the curvature living in a uniform you can animate.

three

03

Cursor

13

Pointer-following, magnetism, hover state, custom cursors.

Blend-Difference Cursor

DOM runtime

A white dot in difference blend mode inverts whatever it crosses, growing 16 to 44 to 150px on hover.

gsap

Cursor Clip-Path Mask

DOM runtime

A disc of a second layer follows the pointer; hovering the trigger grows it until it covers the panel.

gsap

Cursor Repulsion Burst

WebGL runtime

An orbiting particle field the pointer pushes out of the way, and a press detonates into a shock wave with a heat band.

ogl

Dither Trail Image Reveal

WebGL runtime

A dimmed image restored through a trail of Bayer-thresholded blocks that smear in the direction the pointer moved.

three

GSAP Cursor Follower

DOM runtime

A puck that replaces the arrow inside a panel, trailing 0.4s behind and swelling to a label over targets.

gsap

Hover List Image Trail

DOM runtime

Hovering a row stacks a plate into a column that follows the pointer; the oldest is culled past twenty.

gsap

Magnetic Pointer Button

DOM runtime

A button that leans toward the cursor and springs back, with the label leading the box.

gsap

Pointer Palette Sampling

Canvas 2D runtime

Point at the artwork and it names the colour — a clamped pixel read snapped to the nearest palette entry.

No dependencies

Pointer-Variable Gradient

CSS runtime

A soft glow tracks the pointer through two CSS custom properties. No rAF, no tween, no string rebuilding.

No dependencies

Pooled Cursor Image Trail

DOM runtime

Tiles drop behind the cursor from a fixed ring of 22 reused nodes, one every 130px of travel.

gsap

quickTo Cursor Preview

DOM runtime

A preview panel drifts a full second behind the pointer, driven by two reused quickTo tweens.

gsap

Radial Mask Spotlight

DOM runtime

A layer masked to a soft disc follows the pointer, with a flat core that makes it read as a beam.

No dependencies

Tweened Cursor Uniform

WebGL runtime

A shader grid with a lens under the pointer, whose position is tweened into the uniform so it settles instead of chasing.

three · gsap

04

Transition

14

Route changes, reveals, enter and exit choreography.

A/B Layer Ping-Pong

DOM runtime

Two stacked layers alternate so any change crossfades, however fast you move between rows.

gsap

Asymmetric In/Out Staggers

DOM runtime

A list that arrives item by item after a hold and leaves twice as fast, from the last row backwards.

gsap

Canvas Handoff Transition

WebGL runtime

The live WebGL canvas is handed to the next page and flies to its new slot, instead of being destroyed and rebuilt.

three · gsap

CSS Variable Clip-Path Tween

DOM runtime

One tweened custom property drives every clip-path on the panel, and reversing the timeline is the exit.

gsap

Delayed-Unmount Loader

CSS runtime

A loading overlay that stays mounted 600ms past the signal so its fade can actually play before it leaves.

No dependencies

Exit Warp Before Navigate

WebGL runtime

A ring of cards tears itself apart and rushes past the camera, and only then does the route change.

three · gsap

Hinged Container Intro

DOM runtime

The page body swings up from below the fold, hinged on its own bottom edge, with captions following it in.

gsap

Prefetch-On-Hover Wipe

DOM runtime

Warms the next page on hover, wipes the screen on click, and navigates once the wipe has actually covered.

No dependencies

Idle-Gated Page States

DOM runtime

A page entrance that will not start until a floor delay has elapsed and the main thread has reported itself idle.

gsap

Key-Replayed Page Reveal

CSS runtime

An opaque overlay that fades away on every route change, replayed by nothing more than a changed React key.

No dependencies

Staggered Panel Wipe

DOM runtime

An eased 0-100 counter, a word list and a five-column wipe, all on one timeline so they cannot drift.

gsap

Re-Key Caption Replay

CSS runtime

A caption block whose staggered entrance replays on every index change, restarted by a changed React key.

No dependencies

Preloader That Cannot Hang

DOM runtime

An intro overlay with a hard ceiling, a minimum visible time and a once-per-session flag, so a stalled load cannot trap the page.

No dependencies

Slab Page Transition

DOM runtime

An opaque slab rises through the frame, the route changes under it, and it keeps going — nothing ever reverses.

gsap

05

Text

11

Splitting, staggering, scrambling, and typographic motion.

Asymmetric Typewriter

DOM runtime

Rotating phrases that delete at twice the speed they type, with a beat of nothing at the empty string.

No dependencies

Char Stagger Then Scale-Up

DOM runtime

Characters resolve left to right, then the whole word scales up with an overshoot as the last one lands.

gsap

Converging Headline Words

DOM runtime

Headline words slide in from opposite margins and lock into a sentence, pinned to scroll position.

gsap

Eased Number Counter

DOM runtime

A statistic that counts up on an eased curve and settles on its exact final figure without shifting the layout.

gsap

Font-Safe Text Splitting

DOM runtime

Line splitting gated on document.fonts.ready, re-split on late fonts and on width change, debounced.

gsap

Letter Scramble

DOM runtime

A word assembles out of noise — each character flips through wrong glyphs, decelerating onto the right one.

gsap

Nested Split With True Restore

DOM runtime

Splits rich markup into masked lines and restores the original innerHTML byte-for-byte on teardown.

gsap

Scrubbed Character Colour Reveal

DOM runtime

A dim paragraph resolves character by character as it crosses the viewport, tied to scroll position not a clock.

gsap

Pixels-Per-Second Marquee

DOM runtime

A marquee whose duration is derived from measured width and a px/second speed, so every strip moves at the same rate.

gsap

Step-End Blinking Caret

CSS runtime

A text caret that snaps on and off instead of fading, using step-end timing and an uneven blink rhythm.

No dependencies

Stroke-To-Fill Hover Rows

CSS runtime

An index of outlined type where the hovered row fills in solid, drops its stroke, and steps sideways.

No dependencies

06

Layout

11

Grids, carousels, sticky stacks, and spatial arrangement.

Auto-Advance Filmstrip

CSS runtime

A centred strip that steps one panel every few seconds, neighbours dimmed and shrunk, on one CSS transition.

No dependencies

Drag Marquee

DOM runtime

An endless row that drifts, takes a drag and a throw, and scatters its cards while your hand is down.

gsap

FOV-Derived Row Spacing

DOM runtime

A row whose item spacing is solved from a field of view and a camera distance, so it spans the frame exactly at any size.

No dependencies

Height-First Media Stage

CSS runtime

A media stage sized from its height, with the width derived from the ratio, cross-fading layers and a caption that replays per index.

No dependencies

Layout Lerp Scalar

WebGL runtime

Row, stack, drum and fan are one placement function of seven numbers. Switching layout is a tween over an object.

three · gsap

matchMedia Layout Teardown

DOM runtime

Two layouts behind one gsap.matchMedia block. Cross the breakpoint and the desktop branch reverts itself.

gsap

Percent Slide Carousel

CSS runtime

A flex track translated by -100% per slide. One CSS transition, no measurement, no library.

No dependencies

Perspective Coverflow Scroller

DOM runtime

Panels turn away from the centre in real 3D as you scroll a native container — no tween, no loop.

No dependencies

Proximity Snap Track

CSS runtime

A horizontal rail of variable-width cards that snaps only when you stop near one, and never skips past two at once.

No dependencies

Rotary Drag Carousel

DOM runtime

A wheel of cards you grab and spin. Angular drag, projected inertia, and it always lands on a station.

gsap

Wrapping Drum Carousel

DOM runtime

An endless carousel that reads as a rotating drum with no 3D at all — only x, scale and fading opacity.

gsap

07

Primitives

21

The hooks and math everything else is built from.

Analytic Disc Picking

WebGL runtime

Hit-test camera-facing discs by intersecting the pointer ray with their plane. Exact, allocation-free, and correct for shader billboards.

three

Browser Chrome Frame

CSS runtime

A macOS window frame with hover-revealed traffic lights and an address pill whose check draws itself on copy.

No dependencies

Chord-Synced Particle Burst

DOM runtime

Fires an arpeggio and its visual flares off one schedule, so each flash lands on its own note.

No dependencies

Capture-Phase Click Swallow

DOM runtime

Cancels the single click a finished drag would fire, in the capture phase, without eating the next real click or keyboard activation.

No dependencies

Compound Group Hover Card

CSS runtime

One hover drives four changes on three elements, each with its own duration and curve. Keyboard gets all four.

No dependencies

Conic @property Border

CSS runtime

A gradient ring that rotates around a rounded box. Two highlights chase each other; no JavaScript runs.

No dependencies

Raycaster-Free Hover Picking

DOM runtime

Run the GPU's transform again on the CPU and hit-test the result. No raycaster, no rect reads.

No dependencies

Dotted Notepad Surface

CSS runtime

A tiled dot grid that dissolves at the panel edges, with a hard-stopped folded corner.

No dependencies

Drag with a Dead Zone and Pointer Capture

DOM runtime

Captures the pointer on press but only commits to a drag past a distance threshold, so a shaky click stays a click.

No dependencies

Drifting Smoke Layers

CSS runtime

Slow volumetric fog built from blurred radial gradients on three coprime cycles. No texture, no canvas.

No dependencies

Looping Scroll Cue

CSS runtime

The hairline that dives down a hero. One keyframe pair, a hard ease, and a seamless loop.

No dependencies

Lottie Ratio Poster

DOM runtime

Reserves the box, holds a drawn poster, fetches the JSON only in view, then corrects the ratio from the animation's own w and h.

No dependencies

Nav Dot Wave

CSS runtime

Nav dots that lift in sequence. The index is an inline custom property; CSS derives the delay.

No dependencies

Pause, Don't Unmount

WebGL runtime

React 19's Activity hides a WebGL scene without losing its state. Effects still tear down, so the GL context is genuinely released.

three

Relaxed Seeded Scatter

DOM runtime

Seeded angles around a ring, pushed apart until nothing collides. Ghost ticks mark where they started.

No dependencies

Self-Parking RAF

DOM runtime

An epsilon snap lets a damped value reach its target exactly, so the frame loop hits its exit test and dies.

No dependencies

Slow Idle Float

CSS runtime

A 14px rise and fall over 5 seconds, on the independent translate property so hover transforms still work.

No dependencies

Spring To CSS linear()

CSS runtime

Solves a spring once, samples it into a CSS linear() string, and runs the whole bounce on the compositor.

No dependencies

Web Audio Scheduling Kit

DOM runtime

A lookahead sequencer: a coarse timer queues beats onto the sample-accurate audio clock, so tempo never drifts.

No dependencies

Wheel Accumulator Stepper

DOM runtime

Wheel input normalised by deltaMode and accumulated to a threshold, so one flick of any device moves exactly one step.

No dependencies

Shortest Signed Ring Offset

DOM runtime

Ten dots on a ring, each showing its wrapped offset and the raw index difference it replaces.

No dependencies