목록 보기
TurboRepo Just-in-Time Packages 적용기 Feat. ModuleResolution
백엔드

TurboRepo Just-in-Time Packages 적용기 Feat. ModuleResolution

카카오엔터테인먼트FE
카카오엔터테인먼트FE
2024년 12월 10일

두줄요약

모노레포 공통 패키지를 TurboRepo Just-in-Time Packages 방식으로 바꾸는 과정을 소개했습니다. Typescript moduleResolution과 exports 설정을 함께 이해하며 빌드 없이 소스를 참조하는 흐름을 설명했습니다.

핵심 내용

  • 모노레포에서 공통 패키지를 TurboRepo의 Compiled Packages 방식으로 관리할 때 빌드 과정이 불편했던 문제를 계기로 Just-in-Time Packages 적용을 시도
  • Just-in-Time Packages의 개념을 소개하고, 소스 코드를 직접 참조해 빌드 없이 사용하는 흐름을 실습으로 설명
  • 이를 위해 Typescript의 moduleResolution 동작 방식을 함께 정리하며 node, nodenext, bundler 해석 차이를 설명
  • Turborepo에서 exports를 설정하고 workspace 의존성으로 연결해 JIT 패키지를 사용하는 예시를 제시

적용해볼 점

  • 모노레포 공통 패키지에서 소스 직접 참조와 빌드 시점 컴파일 전략을 검토할 여지
  • 패키지 해석을 위해 package.json exports와 Typescript moduleResolution 설정을 함께 맞출 필요
  • JIT 패키지 도입 시 Node.js와 TypeScript 버전, 번들러 해석 방식의 차이 확인 필요

다음 읽기

#TurboRepo 주제를 다룬 다른 회사 글

CMS 모노레포 개선기: 빌드 시간 단축부터 번들 최적화까지

모노레포 CMS의 빌드 파이프라인을 개선해 배포 시간을 14분에서 8분으로 줄였습니다. 병렬 빌드, 캐시 최적화, 안정성 보강과 번들 최적화까지 함께 다뤘습니다.

여기어때
여기어때
데브옵스

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...