쏘카, Code Generator로 프론트엔드 개발 생산성 UP!
by DD
1년 전
조회수 10
멀티레포 환경의 중복 코드 및 공통 라이브러리 업데이트 문제를 해결하기 위해 모노레포를 도입함
Turborepo 기반의 모노레포 환경 구축 후, Code Generator를 활용하여 프로젝트 세팅 자동화
Code Generator 도입으로 프로젝트 세팅 시간 80% 이상 감소 및 코드 일관성 확보
모노레포 도입 배경: 멀티레포의 문제점
쏘카 프론트엔드 팀은 멀티레포 환경에서 중복 코드와 공통 라이브러리 업데이트의 어려움을 겪었다. 구체적으로, 각 레포지토리마다 다른 개발 환경으로 인해 러닝 커브 증가 및 코드 파편화 문제가 발생했다. 따라서, 모노레포 도입을 통해 이러한 문제들을 해결하고자 했다.
Code Generator: Plop 기반 자동화
쏘카는 Turborepo 기반 모노레포 환경에서 Plop을 활용한 Code Generator를 구축했다. 구체적으로, Plop Config를 통해 새로운 컴포넌트 및 유틸리티를 위한 템플릿을 정의하고, 커스텀 헬퍼 함수와 액션을 추가하여 파일 생성 시 ESLint fix를 적용했다. 결과적으로, 개발 생산성 향상과 코드 일관성을 확보했다.
프로젝트 세팅 자동화의 효과
Code Generator 도입으로 프로젝트 세팅 시간 80% 이상 감소라는 긍정적인 결과를 얻었다. 따라서, 개발자들은 보일러플레이트 코드 작성에 들이는 시간을 줄이고, 서비스 로직에 집중할 수 있게 되었다. 반면, Code Generator 유지보수 및 설정 관리에 대한 추가적인 노력이 필요하다.