Skip to content

es‐toolkit compat에 기여하기

Sojin Park edited this page Mar 21, 2025 · 1 revision

es-toolkit 라이브러리에 기여하러 오신 여러분을 환영해요!

lodash에서 쉽게 마이그레이션을 돕기 위해 es-toolkit/compat 호환 레이어를 만들고 있어요. 이 호환 레이어는 lodash와 완벽하게 동일하게 동작하는 라이브러리를 만드는 것을 목표로 해요. 어떻게 여기에 기여할 수 있는지 알려 드릴게요.

1. 구현할 함수를 골라주세요

이 GitHub 이슈에서 아직 주인이 없는 함수를 찾아 주세요. 서브 이슈 영역에서 아직 구현이 필요한 함수를 찾을 수 있어요.

find-a-function

2. 함수의 동작을 이해해 주세요

바로 구현으로 들어가기 전에, 각 함수가 어떻게 동작하는지 명확하게 이해해야 해요. 다음 자료를 참고해 주세요.

Lodash v5-wip 브랜치의 테스트 코드는 {함수 이름}.test.js 이름으로 작성되어 있어요. 함수의 동작을 이해하는 데에 큰 도움이 돼요.

read-test

3. 함수를 구현하고 테스트 코드를 작성해 주세요

compat 디렉토리에 함수 구현을 추가해 주세요.

함수가 Lodash와 완전하게 동일하게 동작하는지를 검증하기 위해, Lodash v5-wip 브랜치의 테스트 코드를 그대로 복사 및 붙여넣기 해주세요.

구현 체크리스트

  • Does your function signature match the type in @types/lodash?
  • Have you copied the test code from Lodash to verify identical behavior?

4. JSDoc 코멘트를 추가해 주세요

새로 구현된 함수 동작을 설명하는 명확한 JSDoc 코멘트를 추가해 주세요. 다음과 같은 프롬프트로 AI에게 물어보면 초안을 작성해 줄 거예요.

Add JSDoc comments to each function declaration, including helpful examples in each one. Print the code in markdown.

{Your code here}

5. 문서를 생성해 주세요

여러 언어로 된 문서 파일이 필요해요. 코드를 ./src/array/test.ts에 만들었다면, 다음 위치에 문서 파일을 생성해 주세요.

  • 영어: ./docs/reference/array/test.md
  • 한국어: ./docs/ko/reference/array/test.md
  • 일본어: ./docs/ja/reference/array/test.md
  • 중국어 (간체): ./docs/zh_hans/reference/array/test.md

문서 생성기 사용하기

더 편하게 문서를 생성하기 위해 사용할 수 있는 자동 스크립트가 있어요. 먼저 Deno가 없다면 설치해 주세요.

curl -fsSL https://deno.land/install.sh | sh

다음 코드를 이용해서 문서 생성기를 실행해 주세요.

# 리포지토리 루트에서 실행하세요
deno run -A ./.scripts/docs/generate-docs.mts

문서 번역하기

전세계에서 라이브러리가 사용되고 있기 때문에 문서 번역이 중요해요. OpenAI API 키를 가지고 있다면, 다음 명령어를 실행해서 번역을 자동화할 수도 있어요.

OPENAI_API_KEY=your_key_here deno run -A ./.scripts/docs/generate-docs.mts