ValyroUI Русская версия

Scroll Effect

Twenty-four scroll effects — reveals, parallax, a progress bar, sticky stacking cards, a sideways track, text that fills in — on scroll-driven timelines. Free, MIT · 3D and motion › Motion for any component

Motion driven by the scroll: content that enters as it scrolls into view, follows the scroll while it passes — parallax, a reading progress bar, sticky cards that recede, a pinned track that runs sideways, text that fills line by line — or leaves as it scrolls out, with one of twenty-four presets. Each preset is Web Animation keyframes on a scroll-driven timeline (the engine of CSS animation-timeline: view() / scroll()), so the browser plays it from the scroll position with no script per frame; without scroll timelines, entrances play on a timer as they come into view and the rest follow a listener that runs only while the element is on screen and never in a hidden tab. Transform and opacity first (the masks, text-fill and blur say so in their cost). On machines without GPU compositing each preset plays its one-layer CPU variant. Reduced motion: the content at rest, only the progress bar keeps following.

Installation

npx valyro-cli@latest add scroll-effect
npx shadcn@latest add https://valyro.xyz/r/scroll-effect.json
npm install valyro-ui

import 'valyro-ui/styles.css';
import { ScrollEffect } from 'valyro-ui';

Props

PropTypeDefault
presetScrollEffectPreset'fade-up'How the content answers the scroll: enters as it scrolls into view (fade-up, scale-in…), follows the scroll while it passes (parallax, progress, stack, horizontal, text-fill…) or leaves as it scrolls out at the top (fade-out…). Seven presets are free; the other seventeen need ValyroUI Pro.
strengthnumber1Multiplies the preset's travel, turn, zoom and blur: 0.5 is half as far, 2 twice as far.
range[ScrollRangePoint, ScrollRangePoint]The stretch of the scroll that plays it, in CSS animation-range terms: ['entry 0%', 'cover 50%']. Default: the preset's own.
tierPageTransitionTierSetting'auto'gpu — the full preset; cpu — its one-layer variant for machines that composite on the processor (virtual machines, remote desktops, software WebGL); auto — cpu on such machines and on devices with two cores or 2 GB of memory or less, detected while the browser is idle; gpu elsewhere.
disabledbooleanfalseOff: the content stays at rest and nothing is animated.

Related components

  • Reveal — Reveal any component on scroll: rise, fade in, 3D unfold
  • Stagger — Lists, grids and table rows appear in a wave, one after another
  • Tilt — Tilt, lift, glare and magnetic pull under the cursor for any card
  • Layout Group — Jump-free reordering: filter, sort, regrid
  • Presence — Enter and exit: an element stays mounted until its exit animation ends
  • Page Transition — Forty transitions between pages, routes and steps — cube, carousel, circle and more — with light variants for machines without a GPU
  • Scene Backdrop — WebGL or CSS scene behind a regular UI: hero, cards, dashboard
  • Scroll Cylinder — Headline lines on a rotating cylinder, driven by scroll
  • Stacking Panels — Panels stick on scroll and pile into a stack
  • Helix Rail — Cards on a helix that spins with scroll
  • Scroll Scene — Scroll scene: a pinned screen changes step by step, with a progress rail
  • Parallax Layers — Depth layers that shift with scroll and cursor

Previous: Presence · Next: Page Transition · All 3D and motion