- Extract 4756 source files from cli.js.map (57MB) - Set up Bun build system with bun:bundle feature flag shim - Configure 90+ compile-time feature flags matching production defaults - Inject MACRO constants (VERSION, BUILD_TIME, etc.) - Create stubs for private packages (color-diff-napi, modifiers-napi, etc.) - Install all public dependencies via pnpm - Patch commander v14 to allow multi-char short flags (-d2e) - Build output: dist/cli.js (22MB), verified working
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]]
Contributing
We welcome contribution from everyone in the community. Read below for detailed contribution guide.
License
MIT © Viva Republica, Inc. See LICENSE for details.
