# On-Scroll Blur Reveal — primitive for text reveals (html)

> **For AI agents:** find the right skill in one call — `curl -s "https://skills.varg.ai/api/search?q=<what the person wants>"` returns the matching use case and the best skills with install commands, as markdown (Russian works too). Full index: https://skills.varg.ai/llms.txt. Every page has a markdown twin: add `.md` to its path. Before generating anything, show the person the options on the use-case page.

Paragraphs on black sharpening out of a heavy blur word by word as they move up the screen

- **Install:** `git clone https://github.com/codrops/ScrollBlurTypography`
- **Registry:** codrops · **Framework:** html · **License:** MIT (per demo repo)
- **Docs and preview:** https://tympanus.net/Development/ScrollBlurTypography/
- **Source:** https://github.com/codrops/ScrollBlurTypography
- **Example:** https://skills.varg.ai/previews/lib-codrops-scroll-blur-typography.mp4?v=43467 (From the library’s repo (Codrops — Manoela Ilic))
- **Time:** Drive from the frame. Runs on its own clock (requestAnimationFrame, timers, springs or CSS). Drive it from frame / fps before rendering, or the render drifts.
- **Runs:** local render, free
- **Aspect:** any

## Prompt that renders it frame-exact

Reveal a block of narration or a quote with Codrops' On-Scroll Blur Reveal (demo https://tympanus.net/Development/ScrollBlurTypography/, article https://tympanus.net/codrops/?p=76992, code https://github.com/codrops/ScrollBlurTypography, MIT): words or characters (split with SplitType) go from blurred, faint and offset to sharp as the text moves into view, with several styles in js/index.js. In the demo GSAP ScrollTrigger scrubs each tween from the scroll position. For a video, drop ScrollTrigger and Lenis, build the same tweens in one paused timeline where time stands in for scroll, and seek it from the frame (HyperFrames: window.__timelines; Remotion: tl.seek(frame / fps)); move the text block up with the same clock if you want the scroll feel. Use a dark background and a large type size.

## Used in

- [Product launch film](https://skills.varg.ai/video/product-launch.md)
- [Notes-app ad](https://skills.varg.ai/video/notes-ad.md)
- [Text-message story](https://skills.varg.ai/video/chat-story.md)
- [CLI & terminal demo](https://skills.varg.ai/video/terminal-demo.md)
- [AI chat & agent demo](https://skills.varg.ai/video/ai-demo.md)
- [Data story](https://skills.varg.ai/video/data-story.md)
- [Math animation](https://skills.varg.ai/video/math-animation.md)
- [Whiteboard & hand-drawn](https://skills.varg.ai/video/whiteboard.md)

## More text reveals

- [Blur In](https://skills.varg.ai/component/hf.blur-in.md) — `npx hyperframes add blur-in`
- [Blur Out Up](https://skills.varg.ai/component/hf.blur-out-up.md) — `npx hyperframes add blur-out-up`
- [Bottom Up Letters](https://skills.varg.ai/component/hf.bottom-up-letters.md) — `npx hyperframes add bottom-up-letters`
- [Caret Swap](https://skills.varg.ai/component/hf.caret-swap.md) — `npx hyperframes add caret-swap`
- [Focus Blur Resolve](https://skills.varg.ai/component/hf.focus-blur-resolve.md) — `npx hyperframes add focus-blur-resolve`
- [Line-by-Line Slide](https://skills.varg.ai/component/hf.line-by-line-slide.md) — `npx hyperframes add line-by-line-slide`
