# About es-toolkit

es-toolkit is a modern JavaScript utility library that offers a collection of powerful functions for everyday use.

Compared to alternatives like lodash, es-toolkit provides a [significantly smaller bundle size](./bundle-size.md) (up to 97% less) and [2-3 times faster runtime performance](./performance.md). This is achieved through a modern implementation that leverages the latest JavaScript features.

es-toolkit comes with built-in TypeScript types and has been rigorously tested, ensuring 100% test coverage for maximum reliability.

## Features

Here are some of the features es-toolkit offers:

- **Array**: Utilities for array manipulation, such as [uniq](./reference/array/uniq.md) and [difference](./reference/array/difference.md).
- **Function**: Tools for controlling function execution, including [debounce](./reference/function/debounce.md) and [throttle](./reference/function/throttle.md).
- **Math**: Numerical utilities like [sum](./reference/math/sum.md) and [round](./reference/math/round.md).
- **Object**: Tools for manipulating JavaScript objects, such as [pick](./reference/object/pick.md) and [omit](./reference/object/omit.md).
- **Predicate**: Type guard functions like [isNotNil](./reference/predicate/isNotNil.md).
- **Promise**: Asynchronous utilities like [delay](./reference/promise/delay.md).
- **String**: Utilities for string manipulation, such as [snakeCase](./reference/string/snakeCase.md)

## Links

Please refer to the following links for more information about this project.

- [GitHub](https://github.com/toss/es-toolkit)
