프로젝트 전체에서 사용되는 패키지, 어떻게 마이그레이션 할까?
3
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

프로젝트 패키지 마이그레이션 경험

이 게시물은 토스 TUBA 팀이 대규모 프로젝트에서 사용 중인 핵심 패키지인 Next.js와 Recoil을 어떻게 점진적으로 마이그레이션했는지 설명합니다.

Next.js 마이그레이션

  • Next.js의 느린 빌드 시간과 메모리 문제로 인해 Webpack 기반 빌드로 전환
  • next-polyfill 패키지를 만들어 Next.js 인터페이스를 대체해 점진적 마이그레이션 가능
  • 이로 인해 빌드 시간이 약 86% 단축됨

Recoil에서 Jotai로의 상태관리 마이그레이션

  • Recoil 지원 종료 및 버그 문제로 Jotai로 대체 결정
  • ts-morph 라이브러리를 활용해 900여 개 파일의 코드를 자동 변환하는 마이그레이션 스크립트 작성
  • 자동화 덕분에 약 100초 만에 대규모 코드 변경 완료 후 수동 에러 수정 진행

연관 게시글