Measured entry

fancy-circling-elements

hero-effect3dmotion on file

A client-side React orbit primitive shipped as a shadcn registry item. It absolutely positions each child around a configurable radius and drives the loop with registry-supplied CSS keyframes. It depends on Motion, Tailwind utility classes, and the usual shadcn cn helper and path alias.

Specimen
Motion capture of the mounted demo, recorded by the harness. No audio track.
Harness screenshot of fancy-circling-elements at 375 pixels wide
Harness screenshot at 375 pixels wide. No horizontal overflow recorded.
Harness screenshot of fancy-circling-elements at 768 pixels wide
Harness screenshot at 768 pixels wide. No horizontal overflow recorded.
Harness screenshot of fancy-circling-elements at 1440 pixels wide
Harness screenshot at 1440 pixels wide. No horizontal overflow recorded.

Measured

Every value below was written by the harness on the run that produced the frames above. None of it is derived from the prose.

Harness measurements recorded for fancy-circling-elements
BuildOK
MountOK
Console errors0
Uncaught page errors0
Horizontal overflowclean at 375, 768, 1440
Axe critical0
Axe serious0
Axe moderate0
Axe minor0
Gzip marginal66.5 KB (131.9 KB build, 65.4 KB baseline)
Bare modeFAIL
Provider requiredNO
Demo usedwritten from the component source API

What the harness recorded

BARE BUILD

✗ Build failed in 28.64s
error during build:
[vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/cut/fancy/blocks/circling-elements.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'

Verdict

A focused orbit effect that built, mounted, and stayed contained across the tested layouts. Its API is useful, but the Motion wrapper adds weight while the actual loop is CSS-driven. It needs a shadcn-style setup before it can build or mount.

Use it if

  • You need logos, badges, or small cards to orbit a hero focal point.
  • Your app already has a shadcn-style alias, Tailwind utilities, and Motion installed.
  • You want per-instance control over radius, speed, direction, easing, or hover pausing.

Skip it if

  • You need the orbiting content to reserve layout space, since every child is absolutely positioned.
  • You require reduced-motion behavior out of the box; the component does not provide it.
  • You want a dependency-free CSS effect and do not otherwise use Motion.
  • You plan to pass an items prop, since this component renders separate React children instead.

Install

Installation record for fancy-circling-elements
Declared dependenciesmotion
Missing on installnone
Bare installfails once the shadcn-style helpers are removed, so it needs that setup
Providerno provider required in the harness

In a non-shadcn project, install Motion, configure the at-sign source alias, add a cn class-merging helper, enable the referenced Tailwind utilities, and copy the circling keyframes from the registry into global CSS. Give the wrapper an explicit size and add your own reduced-motion rule.

Source and credit

This page is a review, not a copy. The component source lives with its author and this site does not republish it. Read the license before you use anything.

License
MIT
Record published
2026-08-13

Alternatives

Other published entries for the hero-effect pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.