Text Rotate — primitive for text reveals (react)
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.mdto its path. Before generating anything, show the person the options on the use-case page.
A word in a coloured box swaps for the next one, its letters springing up from below in a stagger
- Install:
npx shadcn add @fancy/text-rotate - Registry: fancy · Framework: react · License: MIT
- Docs and preview: https://www.fancycomponents.dev/docs/components/text/text-rotate
- Source: https://github.com/danielpetho/fancy/blob/main/src/fancy/components/text/text-rotate.tsx
- Example: https://skills.varg.ai/previews/lib-fancy-text-rotate.mp4?v=12203 (Captured from the library’s own demo page (Fancy Components))
- 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
Use Text Rotate from Fancy Components (https://www.fancycomponents.dev/docs/components/text/text-rotate, MIT). Install with npx shadcn add @fancy/text-rotate once the @fancy registry is in components.json. Put it in a headline like 'Make it [fancy / right / yours]', with the changing word in a brand-coloured pill. Set texts, rotationInterval, staggerDuration, staggerFrom, splitBy and the spring transition. It switches words on setInterval and animates with AnimatePresence. Compute the active index from floor(frame / fps * 1000 / rotationInterval) and each letter's offset from the time since the last switch, or render each word in its own Remotion Sequence, with auto={false}.
Used in
- Product launch film
- Notes-app ad
- Text-message story
- CLI & terminal demo
- AI chat & agent demo
- Data story
- Math animation
- Whiteboard & hand-drawn
More text reveals
- Blur In —
npx hyperframes add blur-in - Blur Out Up —
npx hyperframes add blur-out-up - Bottom Up Letters —
npx hyperframes add bottom-up-letters - Caret Swap —
npx hyperframes add caret-swap - Focus Blur Resolve —
npx hyperframes add focus-blur-resolve - Line-by-Line Slide —
npx hyperframes add line-by-line-slide