목록 보기
모노레포 이렇게 좋은데 왜 안써요?
프론트엔드

모노레포 이렇게 좋은데 왜 안써요?

무신사
무신사
2023년 9월 6일

두줄요약

여러 레포지토리로 분산된 프론트엔드 서비스를 모노레포로 통합한 사례를 소개했습니다. 공통 컨벤션과 패키지 공유로 생산성과 유지보수성이 크게 향상되었습니다.

문제 상황

  • 10개 이상 서비스가 멀티 레포지토리로 분산되어 컨벤션, 린트 환경, 라이브러리, 코드 패턴이 제각각인 상태
  • 신규 서비스 생성 시 환경 세팅과 MDS 컴포넌트 재구현이 반복되는 구조
  • 공통 정책 변경 시 여러 레포지토리 담당자에게 각각 수정 요청해야 하는 운영 비효율

원인 분석

  • 서비스별 레포지토리 분리로 인해 코드와 환경의 표준화가 어려운 구조
  • 공통 코드와 정책이 흩어져 있어 버전 통일과 히스토리 관리가 어려운 상태
  • 담당자 외 개발자가 작업할 때 진입 비용과 온보딩 비용이 높은 상황

해결 방법

  • 모노레포로 전환해 여러 서비스와 공통 모듈을 한 저장소에서 관리
  • yarn berry, yarn workspace, PnP, zero-install을 활용해 중복 의존성과 설치 비효율 완화
  • 공통 컨벤션 패키지와 page-modules 구조를 도입해 컨벤션 통일, 응집도 강화, 페이지 간 의존성 제거

성능/운영 포인트

  • 서비스 배포는 독립적으로 유지하면서도 공통 패키지는 함께 관리
  • apps, libs, packages로 역할을 나누어 코드 재사용과 고도화를 분리
  • 버전 통일과 공통 모듈 공유로 공통 작업 공수 80% 이상, UI 작업 시간 50% 이상 감소

무신사 계열사 채용24건

채용 사이트에서 전체 보기

다음 읽기

#모노레포 주제를 다룬 다른 회사 글

모노레포 적용부터 yarn berry까지

멀티레포의 중복과 표준화 문제를 해결하기 위해 Yarn Berry 기반 모노레포를 설계했습니다. PnP 캐싱의 한계를 분석하고, 필요한 코드만 배포하는 yarn release 플러그인을 구현했습니다.

화해
화해
프론트엔드
전체 보기

댓글 0개

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

댓글을 불러오는 중...