AI Briefing

97% 더 작고, 2배 더 빠르게: es-toolkit이 주간 다운로드 1,000만을 넘긴 방법

·2026.04.01 10:00

핵심 내용

es-toolkit은 lodash를 대체하는 ES Modules·TypeScript 기반 유틸리티 라이브러리다.

자세히 보기

es-toolkit은 lodash를 대체하기 위해 Toss 프론트엔드 팀이 처음부터 새로 만든 JavaScript 유틸리티 라이브러리다. ES Modules와 TypeScript를 전제로 설계해, 현대 브라우저와 엔진 환경에서 트리 셰이킹, 타입 안정성, 런타임 성능을 함께 끌어올리는 데 초점을 맞췄다.

핵심 차이는 분명하다. 같은 기능을 기준으로 번들 크기는 최대 97% 더 작고, 런타임은 2~3배 더 빠르다. es-toolkit/compat를 쓰면 lodash를 거의 그대로 대체할 수 있어, 코드 변경 없이도 기존 프로젝트에 바로 적용할 수 있다.

성능과 크기 차이는 구조에서 나온다. lodash-es는 ES Modules 버전이지만 내부 헬퍼 의존성이 남아 있어, 단일 함수를 가져와도 추가 코드가 따라붙는다. 반면 es-toolkit은 각 함수가 완전히 독립적이라 필요한 것만 가져갈 수 있고, @types/lodash 같은 별도 타입 패키지에 의존하지 않아 타입도 소스와 함께 관리된다.

벤치마크 예시도 제시됐다. sample은 lodash의 약 2,000 bytes에서 es-toolkit의 88 bytes 수준으로 줄어들어 약 96% 작아졌고, omit은 런타임에서 11.8배 빠르다고 설명한다. 다만 97%는 모든 함수의 평균이 아니라, 관측된 최대 절감치에 가깝다.

채택 속도도 빠르다. 출시 후 18개월 만에 npm 주간 다운로드가 1,000만을 넘었고, Microsoft, Yarn, Storybook, IBM, Recharts, Ink 같은 팀이 내부 검증을 거쳐 도입했다. 별도의 바이럴 없이도, 더 작은 번들·더 빠른 실행·더 나은 타입 경험이 실제 전환을 이끌었다.

마이그레이션도 간단하다. 가장 쉬운 방법은 package.json에 "lodash": "npm:es-toolkit@^1.44.0"를 넣는 것이고, 더 직접적으로는 lodash-es import를 es-toolkit import로 바꾸면 된다. 여기에 codemod(@es-toolkit/codemod)와 공식 가이드, 퍼포먼스 문서가 제공되며, Node.js·Deno·Bun·브라우저와 CDN 배포도 지원한다.

Toss는 es-toolkit을 시작점으로 더 넓은 오픈소스 활동도 이어가고 있다. Frontend Chapter 안에 Open Source Committee를 두고 overlay-kit, use-funnel, suspensive 같은 라이브러리도 개발 중이다. 메시지는 단순하다. 오래된 유틸리티 스택도 현대의 전제에 맞게 다시 만들면, 크기와 속도 모두 크게 개선할 수 있다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.