Skip to content

dkaoster/scrolly-video

1,095 50JavaScriptMITUpdated 9 months ago
View on GitHub

Components for scroll-based (or other externally controlled) playback.

componentjavascriptreactsveltevideovue

Project homepage

Our verdict: worth borrowing ideas from

MINED 2026-09-02, sha 164a40c, MIT. Three-strategy scroll-scrubbed video: WebCodecs ImageBitmap frame cache / HTML5 playbackRate / currentTime seek, chosen per-frame; WebKit engine sniff permanently excludes playbackRate (iOS). Payload: lerp divisors 256 canvas vs 64 video, frameThreshold 0.1s anti-seek-thrash, playbackRate clamp [1,16], cover 101%, lockScroll 1px/100ms. No tests; 24 edge cases mined from 39 issues. Gaps to fix on reuse: no frame memory cap (#17, ~8.3MB/frame), 500ms decoder drain timer instead of flush() (#114), cover math inverts scroll direction on fixed-width parent (#62), Astro wrapper broken (#158).

Filed under web animation in our directory.

Similar repos