Anime.js is a fast, lightweight JavaScript animation library that gives developers a single API to animate any property on the web. It handles CSS, SVG, DOM attributes, and JavaScript objects with an intuitive syntax that reduces complexity while maintaining powerful capabilities.
Unlike heavier animation frameworks or native browser APIs, Anime.js ships at just 24.5 KB and lets developers import only the modules they need. It's ideal for developers building interactive websites, data visualizations, games, and motion effects without bloating their bundle size.
Developers call the animate() function with a CSS selector or element, pass an object with animation properties (rotate, x, y, duration, easing), and Anime.js handles the frame rendering. For complex sequences, createTimeline() chains multiple animations with stagger() to time each element, while Scroll Observer attaches animations to scroll events using onScroll({ sync: true }) and other configuration options.
Anime.js is best for developers who need a lightweight, flexible animation library without the overhead of larger frameworks like GSAP or Framer Motion. It excels when bundle size matters and animations must be responsive to scroll or media queries, making it ideal for performance-conscious projects and responsive web design.
Core library is 24.50 KB with modular imports allowing developers to load only needed features.
Single animate() function handles CSS properties, SVG, DOM attributes, and JavaScript objects.
Flexible keyframes system allows independent control of duration, delay, and easing for each animated property.
Built-in utilities enable shape morphing, motion path following, and line drawing without additional libraries.
createTimeline() API chains animations in sequence with synchronized callbacks and advanced time positioning.
Fully-featured Draggable API with drag, snap, flick, throw actions and configurable spring stiffness and damping.
Scroll Observer API triggers and synchronizes animations based on scroll position with multiple sync modes.
Built-in stagger() function creates complex timing effects across multiple elements with grid-based options.
Pricing extracted from the product website and may change. Check the source for current details.
A Anime.jsThis | ||||
|---|---|---|---|---|
| Starting price | Free | Free | — | from free |
| Pricing model | Free | Freemium | contact_sales | Freemium |
| Platforms | Web | Web | Web | — |
| Top features |
|
|
|
|
| Rating | — | — | — | — |