Animation

Shiny Text

Shimmer-over-text effect. A bright stripe sweeps across the text using background-clip: text + an animated background-position. Pure CSS port — no JS animation loop.

Angular adaptation of an effect by David Haz / reactbits.dev.

Import

import { WrShinyText } from 'ngwr/shiny-text';

Playground

Premium
<wr-shiny-text
  text="Premium"
  [speed]="2"
  [spread]="120"
  direction="left"
  [yoyo]="false"
  [pauseOnHover]="false"
/>

Customize

Speed (s)
2.0 s
Spread (°)
120 °
Direction
Yoyo
Pause on Hover
Text

Directive variant ([wrShimmer])

import { WrShimmer } from 'ngwr/shiny-text';

<h1 wrShimmer>Premium</h1>

Premium

API

NameDescriptionTypeDefault
textrequiredText to render.string— (required)
disabledPause the animation.booleanfalse
speedTime for the bright stripe to traverse the text, in seconds.number2
colorBase text colour (outside the bright stripe).stringtheme token
shineColorBright stripe colour.string | nulltheme token
spreadGradient angle in degrees.number120
yoyoBounce back-and-forth instead of restarting.booleanfalse
pauseOnHoverPause the animation while hovered.booleanfalse
directionSweep direction.'left' | 'right''left'
delayPause between sweeps in seconds.number0
[wrShimmer]Lightweight directive variant — adds the .wr-shimmer host class for a continuous sweep over any element. Same package.directive