is-animated
v3.0.2
Published
Detects animated images in browser & node. Supports GIF, APNG, WebP & AVIF
Downloads
146,944
Readme
On 01.09.2026
is-animatedlibrary got massive overhaul and switched the repository it's built from (we're now using fork created by FRSOURCE team).For more information, see Migration note.
Quick start
Installation
npm install is-animated
yarn add is-animated
pnpm add is-animatedUsage in browser
<input type="file" accept="image/*" />import isAnimated from 'is-animated';
const input = document.querySelector('input[type="file"]');
input.addEventListener('change', async function () {
const arrayBuffer = await this.files[0].arrayBuffer();
const answer = isAnimated(arrayBuffer) ? 'IS' : 'IS NOT';
alert(`File "${this.files[0].name}" ${answer} animated.`);
});If you prefer, you can import this library using unpkg:
<script defer src="https://unpkg.com/is-animated"></script>
Usage in Node.js
import { readFileSync } from 'fs';
import isAnimated from 'is-animated';
readFileSync('my-test-file.png', (err, buffer) => {
const answer = isAnimated(buffer) ? 'IS' : 'IS NOT';
console.log(`File "my-test-file.png" ${answer} animated.`);
});Demo
For a working example, check out our demo.
Questions
Don’t hesitate to ask a question directly on the discussion board!
Changelog
Changes for every release are documented in the release notes and CHANGELOG file.
Migration from 2.x.x
On 01.09.2026 the library got upgraded using source from FRSOURCE fork which also became the new maintenance team!
Version 3:
- adds support for running
is-animatedunder browser environment, - adds support for AVIF format,
- adds support for ESM modules (.mjs),
- drops support for CommonJS,
- drops support for Node below version 20.
Migration path consists of two things: migrate to Node.js >= 20 and switch from CommonJS to ESM.
Everything else (whole API) stays the same. Enjoy!
Development
- Check out the repository.
- Install dependencies using
pnpm i. - Run
pnpm testto run the test suite. - Run
pnpm startand visithttp://localhost:3000to see the documentation page. You can test the library using the demo section.
License
MIT @ 2024-present, Jakub FRS Freisler, FRSOURCE
MIT @ 2019-2024, Józef Sokołowski
Forked from qzb's great library: is-animated.
