쏘카, 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 유지보수 및 설정 관리에 대한 추가적인 노력이 필요하다.

쏘카 프론트엔드 모노레포 - Part1. Code Generator로 프로젝트 세팅 자동화하기