pile·
프론트엔드·모두싸인모두싸인·

하나의 프론트엔드 코드로 멀티 환경 운영하기

문제모두싸인은 일반 기업용·공공용·온프레미스 세 환경을 한 프론트엔드 코드로 운영했는데, if/else 분기가 코드 곳곳에 퍼지면서 유지보수·온보딩·리뷰 비용이 모두 커졌고 Feature Flag도 클라우드 차이로 답이 되지 못했다.
접근Route는 YAML과 Glob Pattern으로 중앙집중하고, Component는 주석 메타데이터를 ts-morph AST로 자동 수집하며, ESLint 플러그인·Vite 플러그인 HMR·yaml-language-server로 누락 검출과 변경 파일만 재파싱하는 3계층 구조를 도입했다.
결과전체 파일 파싱이 50초에서 7초 이내로 줄었고, .tenantrc 변경만으로 로컬에서 환경별 UI를 즉시 확인할 수 있게 됐으며, 환경 분기가 단일 YAML로 모이면서 코드 전반의 조건문이 사라졌다.
모두싸인
모두싸인 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 프론트엔드·여기어때 (GC컴퍼니)여기어때 (GC컴퍼니)·

    항공 프론트엔드 구축기 (7/10): 창구를 하나만 두었습니다

    여기어때 항공 서비스 프론트엔드가 웹과 앱 웹뷰 두 환경에서 동일한 함수 호출로 동작하는 앱 브릿지 추상화 레이어를 설계한 과정을 다룬다. iOS·안드로이드 규약 차이와 "웹에 존재하지 않는 브릿지를 어떻게 호출하나"라는 문제를 단일 추상화 층으로 해결한 구현 사례다.

    요약 이어보기
    #react#typescript#webview+2