
es-toolkit ·

es-toolkit is a state-of-the-art, high-performance JavaScript utility library with a small bundle size and strong type annotations.
- es-toolkit offers a variety of everyday utility functions with modern implementations, such as debounce, delay, chunk, sum, and pick.
- Designed with performance in mind, es-toolkit achieves 2-3× better performance in modern JavaScript environments.
- es-toolkit supports tree shaking out of the box, and reduces JavaScript code by up to 97% compared to other libraries.
- es-toolkit offers a complete compatibility layer to seamlessly replace lodash, available as es-toolkit/compat.
- es-toolkit includes built-in TypeScript support, with straightforward yet robust types. It also provides useful type guards such as isNotNil.
- es-toolkit is trusted and used by popular open-source projects like Storybook, Recharts, ink, and CKEditor.
- es-toolkit is battle-tested with 100% test coverage, ensuring reliability and robustness.
Examples
// import from '@es-toolkit/es-toolkit' in jsr.
import { chunk, debounce } from 'es-toolkit';
const debouncedLog = debounce(message => {
console.log(message);
}, 300);
// This call will be debounced
debouncedLog('Hello, world!');
const array = [1, 2, 3, 4, 5, 6];
const chunkedArray = chunk(array, 2);
console.log(chunkedArray);
// Output: [[1, 2], [3, 4], [5, 6]]
AI Integration
es-toolkit provides Agent Skills for AI coding tools like Claude Code, Cursor, and Copilot.
npx skills add toss/es-toolkit
For Claude Code, you can also install via the plugin marketplace:
/plugin marketplace add toss/es-toolkit
/plugin install es-toolkit@es-toolkit-plugin
For more details, see the AI Integration guide.
Contributing
We welcome contribution from everyone in the community. Read below for detailed contribution guide.
License
MIT Viva Republica, Inc. See LICENSE for details.