anime is a free, open source design & prototyping project written in JavaScript and released under MIT. It has 72,899 GitHub stars, 4,929 forks and 118 open issues, and was last pushed 28 days ago. On this registry it ranks #4 of 23 tracked projects in Design & Prototyping, with 5 head-to-head comparisons available.

What is anime?

Anime.js is a free, MIT-licensed JavaScript animation engine for developers who need to animate CSS properties, SVG, DOM attributes, and plain JavaScript objects from a single lightweight API.

What it is

Anime.js is a JavaScript animation library distributed as the animejs package. It exposes an ES module API built around animate() and stagger(), and it targets four animation surfaces in one engine: CSS properties, SVG, DOM attributes, and JavaScript Objects. Support for canvas and SVG is reflected in the project's topic list alongside css, javascript, and javascript-library.

The problem it solves is fragmentation. Without a library of this kind, a developer writing a web interface must reach for separate mechanisms for CSS transitions, SVG attribute interpolation, DOM attribute changes, and animation of plain data objects. Anime.js replaces that patchwork with one API surface covering all four, so a single animate() call can drive transforms, SVG geometry, attributes, and object values together. It lives in the browser JavaScript ecosystem and is consumed as an npm dependency or via the builds produced by its own toolchain.

Key capabilities

  • Imports as ES modules: import { animate, stagger } from 'animejs'.
  • Single animate() function animates CSS properties, SVG, DOM attributes, and JavaScript Objects.
  • Per-property options including x, rotate, duration, delay, ease, loop, and alternate.
  • stagger() helper offsets start times across a set of targets, with from: 'center' origin control and a millisecond interval.
  • ease: 'inOutQuint' and other named easing strings select timing curves without custom code.
  • Build pipeline emits ESM, UMD, CJS, and IIFE bundles plus type declarations.
  • Repository scripts cover dev, build, test:browser, test:node, and open:examples for local example browsing.

Who uses it and how

  • Front-end developers building interface motion in the browser, animating .square-style selectors and other DOM targets.
  • Teams animating SVG and canvas content, since both appear in the project topics and SVG is a stated target surface.
  • Projects that need one animation dependency instead of separate CSS, SVG, and object tweening tools.
  • Developers animating JavaScript Objects directly, not only rendered elements.
  • Maintainers syncing the library through npm as an animejs dependency and running npm i before the dev and build scripts.

Getting started

Install from npm as animejs and import ES modules, then call animate() with a target selector and an options object. For local development, run npm i and then npm run dev (or npm run build for ESM, UMD, CJS, and IIFE output with type declarations). Full documentation is at animejs.com/documentation, and a v3 to v4 migration guide exists in the GitHub wiki.

How it compares

No paid products are listed in the facts, and no comparable tools are named, so this entry stands alone in this registry.

When to use it — and when not to

Anime.js is MIT-licensed and free, and the README states it is sustained by GitHub Sponsors rather than licence fees, so cost is not a barrier. Nothing in the provided facts mentions a required database, object storage, or SMTP service, so no backend operation is implied — but the README excerpt is sparse on runtime requirements and contains no stated performance benchmarks or browser support matrix, so teams with strict compatibility targets should verify against the documentation before adopting. V4 differs from V3, so existing V3 codebases must follow the migration guide rather than upgrade in place.

project readme (upstream, from github) — read inline

Anime.js

Anime.js is a fast, multipurpose and lightweight JavaScript animation library with a simple, yet powerful API.
It works with CSS properties, SVG, DOM attributes and JavaScript Objects.

NPM Downloads jsDelivr hits (npm) GitHub Sponsors

Sponsors

Anime.js is 100% free and is only made possible with the help of our sponsors. Help the project become sustainable by sponsoring us on GitHub Sponsors.

Platinum sponsors

Silver sponsors

Get featured here by becoming a GitHub Sponsor.

Usage

Anime.js V4 works by importing ES modules like so:

import {
  animate,
  stagger,
} from 'animejs';

animate('.square', {
  x: 320,
  rotate: { from: -180 },
  duration: 1250,
  delay: stagger(65, { from: 'center' }),
  ease: 'inOutQuint',
  loop: true,
  alternate: true
});

V4 Documentation

The full documentation is available here.

V3 Migration guide

You can find the v3 to v4 migration guide here.

NPM development scripts

First, run npm i to install all the necessary packages. Then, execute the following scripts with npm run .

script action
dev Watches for changes in src/**/*.js, bundles the ESM version to lib/ and creates type declarations in types/
dev:test Runs dev and test:browser concurrently
build Bundles ESM / UMD / CJS / IIFE versions to lib/ and creates type declarations in types/
test:browser Starts a local server and runs all browser-related tests
test:node Starts Node-related tests
open:examples Starts a local server to browse the examples locally

© Julian Garnier | MIT License

Frequently asked questions

Is anime free to use?

anime is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does anime do?

JavaScript animation engine

What is anime written in?

anime is primarily written in JavaScript. Its source is publicly available at https://github.com/juliangarnier/anime, and it has 72,899 GitHub stars.