Extended animation utilities for Tailwind CSS v4. Modern, lightweight, and fully customizable animations built with CSS custom properties.

- Tailwind CSS v4 - Built with
@utility
and@theme
syntax - Zero Configuration - Just import and start animating
- Fully Customizable - Control duration, delay, timing, and more
- CSS Custom Properties - Easy theming and dynamic control
- Modular Architecture - Import only what you need
npm install @iscodex/tailwindcss-animate
Add the import to your CSS file:
@import "tailwindcss";
@import "@iscodex/tailwindcss-animate";
Start using animations:
<div class="animate-wiggle">Hello World!</div>
<button class="animate-bounce animate-infinite animate-duration-[2s]">
Click me
</button>
- Tailwind CSS v4.0.0 or higher
- Modern browser with CSS custom properties support
animate-flash
- Flashing effectanimate-head-shake
- Head shake movementanimate-heart-beat
- Heart beating effectanimate-jelly
- Jello wobble effectanimate-rubber-band
- Rubber band stretchanimate-shake-x
- Horizontal shakeanimate-shake-y
- Vertical shakeanimate-swing
- Pendulum swinganimate-tada
- Celebration effectanimate-wiggle
- Gentle rotation wiggleanimate-wobble
- Side-to-side wobbleanimate-float
- Floating effectanimate-spin
- Continuous rotationanimate-ping
- Ping radar effectanimate-pulse
- Pulse opacityanimate-bounce
- Bouncing effect
animate-back-in-down
- Back entrance from topanimate-back-in-start
- Back entrance from leftanimate-back-in-end
- Back entrance from rightanimate-back-in-up
- Back entrance from bottom
animate-back-out-down
- Back exit to bottomanimate-back-out-start
- Back exit to leftanimate-back-out-end
- Back exit to rightanimate-back-out-up
- Back exit to top
animate-bounce-in
- Bounce entranceanimate-bounce-in-down
- Bounce in from topanimate-bounce-in-start
- Bounce in from leftanimate-bounce-in-end
- Bounce in from rightanimate-bounce-in-up
- Bounce in from bottom
animate-bounce-out
- Bounce exitanimate-bounce-out-down
- Bounce out to bottomanimate-bounce-out-start
- Bounce out to leftanimate-bounce-out-end
- Bounce out to rightanimate-bounce-out-up
- Bounce out to top
animate-dash-in-start
- Fast slide in from leftanimate-dash-in-end
- Fast slide in from rightanimate-dash-out-start
- Fast slide out to leftanimate-dash-out-end
- Fast slide out to right
animate-fade-in
- Fade entranceanimate-fade-in-down
- Fade in from topanimate-fade-in-start
- Fade in from leftanimate-fade-in-end
- Fade in from rightanimate-fade-in-up
- Fade in from bottom
animate-fade-out
- Fade exitanimate-fade-out-down
- Fade out to bottomanimate-fade-out-start
- Fade out to leftanimate-fade-out-end
- Fade out to rightanimate-fade-out-up
- Fade out to top
animate-flip
- 3D flip effectanimate-flip-in-x
- Flip in on X-axisanimate-flip-in-y
- Flip in on Y-axisanimate-flip-out-x
- Flip out on X-axisanimate-flip-out-y
- Flip out on Y-axis
animate-rotate-in
- Rotating entranceanimate-rotate-in-down-start
- Rotate in from top-leftanimate-rotate-in-down-end
- Rotate in from top-rightanimate-rotate-in-up-start
- Rotate in from bottom-leftanimate-rotate-in-up-end
- Rotate in from bottom-right
animate-rotate-out
- Rotating exitanimate-rotate-out-down-start
- Rotate out to bottom-leftanimate-rotate-out-down-end
- Rotate out to bottom-rightanimate-rotate-out-up-start
- Rotate out to top-leftanimate-rotate-out-up-end
- Rotate out to top-right
animate-slide-in-down
- Slide in from topanimate-slide-in-up
- Slide in from bottomanimate-slide-in-start
- Slide in from leftanimate-slide-in-end
- Slide in from right
animate-slide-out-down
- Slide out to bottomanimate-slide-out-up
- Slide out to topanimate-slide-out-start
- Slide out to leftanimate-slide-out-end
- Slide out to right
animate-hinge
- Door hinge effectanimate-jack-in
- Pop-up like jack-in-the-boxanimate-jack-out
- Reverse jack-in effectanimate-roll-in
- Rolling entranceanimate-roll-out
- Rolling exitanimate-particle
- Particle effect
animate-zoom-in
- Zoom entranceanimate-zoom-in-down
- Zoom in from topanimate-zoom-in-up
- Zoom in from bottomanimate-zoom-in-start
- Zoom in from leftanimate-zoom-in-end
- Zoom in from right
animate-zoom-out
- Zoom exitanimate-zoom-out-down
- Zoom out to bottomanimate-zoom-out-up
- Zoom out to topanimate-zoom-out-start
- Zoom out to leftanimate-zoom-out-end
- Zoom out to right
<div class="animate-wiggle animate-duration-[500ms]">Fast wiggle</div>
<div class="animate-bounce animate-duration-[2s]">Slow bounce</div>
<div class="animate-fade-in animate-delay-[1s]">Delayed entrance</div>
<div class="animate-pulse animate-infinite">Never stops</div>
<div class="animate-bounce animate-twice">Bounce twice</div>
<div class="animate-spin animate-reverse">Reverse spin</div>
<div class="animate-wiggle animate-alternate animate-infinite">
Back and forth
</div>
<div class="animate-fade-in animate-fill-both">Maintains final state</div>
<div class="animate-bounce animate-ease-in-out">Smooth bounce</div>
Customize animations globally using CSS custom properties:
:root {
--default-animation-duration: 0.5s;
--default-animation-delay: 0s;
--default-animation-timing-function: ease-in-out;
}
/* Theme-specific customization */
.dark {
--default-animation-duration: 0.8s;
}
<button class="hover:animate-wiggle hover:animate-infinite">
Hover to wiggle
</button>
<div class="animate-bounce md:animate-fade-in lg:animate-none">
Responsive animation
</div>
<div class="animate-spin animate-duration-[3.5s]">Custom timing</div>
MIT License - see LICENSE file for details.
See CHANGELOG for version history.
Made with ❤️ by @alckordev