![](./docs/public/og.png)

# es-toolkit &middot; [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/toss/es-toolkit/blob/main/LICENSE) [![codecov](https://codecov.io/gh/toss/es-toolkit/graph/badge.svg?token=8N5S3AR3C7)](https://codecov.io/gh/toss/es-toolkit) [![NPM badge](https://img.shields.io/npm/v/es-toolkit?logo=npm)](https://www.npmjs.com/package/es-toolkit) [![JSR badge](https://jsr.io/badges/@es-toolkit/es-toolkit)](https://jsr.io/@es-toolkit/es-toolkit) [![Discord Badge](https://discord.com/api/guilds/1281071127052943361/widget.png?style=shield)](https://discord.gg/vGXbVjP2nY)

[English](https://github.com/toss/es-toolkit/blob/main/README.md) | [한국어](https://github.com/toss/es-toolkit/blob/main/README-ko_kr.md) | [简体中文](https://github.com/toss/es-toolkit/blob/main/README-zh_hans.md) | 日本語

es-toolkitは、最先端のJavaScriptユーティリティライブラリであり、高性能で小さなバンドルサイズ、強力な型注釈を提供します。

- es-toolkitは、[debounce](https://es-toolkit.dev/reference/function/debounce.html)、[delay](https://es-toolkit.dev/reference/promise/delay.html)、[chunk](https://es-toolkit.dev/reference/array/chunk.html)、[sum](https://es-toolkit.dev/reference/math/sum.html)、[pick](https://es-toolkit.dev/reference/object/pick.html)など、日常的に使用するさまざまなユーティリティ関数を最新の実装で提供します。
- パフォーマンスを重視して設計されており、es-toolkitは最新のJavaScript環境で[2-3倍の性能向上](https://es-toolkit.dev/performance.html)を実現します。
- es-toolkitはツリーシェイキングをサポートしており、他のライブラリと比較してJavaScriptコードを最大[97%削減](https://es-toolkit.dev/bundle-size.html)します。
- es-toolkitは、lodashを簡単に置き換えることができる完全な互換性レイヤー、[es-toolkit/compat](https://es-toolkit.dev/compatibility.html)を提供します。
- es-toolkitには組み込みのTypeScriptサポートが含まれており、直感的で堅牢な型を提供します。また、[isNotNil](https://es-toolkit.dev/reference/predicate/isNotNil.html)などの便利な型ガードも提供します。
- es-toolkitは、[Storybook](https://github.com/storybookjs/storybook/blob/9d862798d666678cc4822e857c00bbd744169ced/code/core/package.json#L358)、[Recharts](https://github.com/recharts/recharts/blob/0fa4cc325da403b6fa1c6be0f820896ed92f806a/package.json#L94)、[ink](https://github.com/vadimdemedes/ink/blob/2090ad9779be59dea71d173eb49785b7bd4495d0/package.json#L55)、[CKEditor](https://github.com/ckeditor/ckeditor5/blob/60d5fac804643cb4d359767ee2f94e3d92d1fcc5/packages/ckeditor5-core/package.json#L53)など、信頼性の高い人気のオープンソースプロジェクトで利用されています。
- es-toolkitは100%のテストカバレッジを持ち、信頼性と堅牢性を確保しています。

## 例

```tsx
// jsrでは '@es-toolkit/es-toolkit' からインポートします。
import { chunk, debounce } from 'es-toolkit';

const debouncedLog = debounce(message => {
  console.log(message);
}, 300);

// この呼び出しはデバウンスされます
debouncedLog('Hello, world!');

const array = [1, 2, 3, 4, 5, 6];
const chunkedArray = chunk(array, 2);

console.log(chunkedArray);
// 出力: [[1, 2], [3, 4], [5, 6]]
```

## AI 連携

es-toolkitは、Claude Code、Cursor、Copilotなど、AIコーディングツールで使える[Agent Skills](https://skills.sh)を提供しています。

```bash
npx skills add toss/es-toolkit
```

Claude Codeをご利用の場合は、プラグインマーケットプレイスからもインストールできます:

```
/plugin marketplace add toss/es-toolkit
/plugin install es-toolkit@es-toolkit-plugin
```

詳細については、[AI 連携ガイド](https://es-toolkit.dev/ja/ai-integration.html)をご覧ください。

## 貢献

コミュニティの皆さんからの貢献を歓迎します。詳細な貢献ガイドについては、以下をお読みください。

[CONTRIBUTING](https://github.com/toss/es-toolkit/blob/main/.github/CONTRIBUTING.md)

## ライセンス

MIT © Viva Republica, Inc. 詳細については[LICENSE](./LICENSE)をご覧ください。

<a title="Toss" href="https://toss.im">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://static.toss.im/logos/png/4x/logo-toss-reverse.png">
    <img alt="Toss" src="https://static.toss.im/logos/png/4x/logo-toss.png" width="100">
  </picture>
</a>
