# Circling Elements — component for galleries & carousels (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 `.md` to its path. Before generating anything, show the person the options on the use-case page.

A ring of photos orbiting a centre point, every image staying upright as the circle turns

- **Install:** `npx shadcn add @fancy/circling-elements`
- **Registry:** fancy · **Framework:** react · **License:** MIT
- **Docs and preview:** https://www.fancycomponents.dev/docs/components/blocks/circling-elements
- **Source:** https://github.com/danielpetho/fancy/blob/main/src/fancy/components/blocks/circling-elements.tsx
- **Example:** https://skills.varg.ai/previews/lib-fancy-circling-elements.mp4?v=85391 (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 Circling Elements from Fancy Components (https://www.fancycomponents.dev/docs/components/blocks/circling-elements, MIT). Install with `npx shadcn add @fancy/circling-elements` after adding the @fancy registry to components.json, plus the circling keyframes from its docs page. Orbit product shots, avatars, logos or app icons around a central title or logo. Set radius (scale it to the frame, e.g. 35% of the short side), duration, easing and direction. The orbit is a CSS keyframe animation, so pause it and set the animation time from frame / fps, or compute each item's angle as 360 * ((frame / fps) / duration) + index * 360 / count and position it directly.

## Used in

- [Faceless narrated video](https://skills.varg.ai/video/faceless-explainer.md)
- [Top-N listicle](https://skills.varg.ai/video/listicle.md)
- [Meme format](https://skills.varg.ai/video/meme.md)
- [News explainer](https://skills.varg.ai/video/news-explainer.md)
- [Year in review / Wrapped](https://skills.varg.ai/video/wrapped.md)
- [Scores & match recap](https://skills.varg.ai/video/sports-recap.md)
- [Flashcards & language drills](https://skills.varg.ai/video/flashcards.md)
- [History timeline](https://skills.varg.ai/video/history-timeline.md)

## More galleries & carousels

- [Stamp Carousel](https://skills.varg.ai/component/varg.stamp-carousel.md) — `git clone https://github.com/vargHQ/code2video-templates && cd code2video-templates/stamp-carousel && bash make.command`
- [Circle Carousel 1](https://skills.varg.ai/component/hf.carousel-circle-1.md) — `npx hyperframes add carousel-circle-1`
- [Circle Carousel 2](https://skills.varg.ai/component/hf.carousel-circle-2.md) — `npx hyperframes add carousel-circle-2`
- [Circle Carousel 3](https://skills.varg.ai/component/hf.carousel-circle-3.md) — `npx hyperframes add carousel-circle-3`
- [Circle Carousel 4](https://skills.varg.ai/component/hf.carousel-circle-4.md) — `npx hyperframes add carousel-circle-4`
- [Circle Carousel 5](https://skills.varg.ai/component/hf.carousel-circle-5.md) — `npx hyperframes add carousel-circle-5`
