Pinwheel
Markup where the component goes, CSS in your stylesheet. No JavaScript.
HTML
CSS
Paste into Claude, ChatGPT or Cursor after filling in {{USER_STACK}}, {{USER_STYLING}} and {{USER_CONSTRAINTS}}. Neutral keeps the greys you see here; Match my project asks the model to map them onto your own colour tokens.
Install with shadcn
Needs a free account token. Get a token
npx shadcn@latest add @movin/loader-pinwheelAbout this component
A paper pinwheel on a stick: a gust spins it up hard, it coasts down almost to a stop, and the next gust catches it.
- Dependencies
- None
- Difficulty
- Intermediate
- Reduced motion
- Respected
- Theme
- Light and dark
- Follows page color-scheme
Triggers2
- Continuous
- Loop
Techniques3
- SVG
- Keyframes
- Transform only
Accessibility
Keyboard and screen readers
The root has role="status" and aria-label="Loading"; the drawing inside it is aria-hidden.
Reduced motion
The wheel rests at an angle.
Use it in anything you build, commercial and client work included. Licence