이커머스 프로젝트 초기 설정으로 협업·코드 리뷰 품질 잡기
목차
새 프로젝트 첫 삽
오랜만에 빈 디렉토리부터 시작하는 작업을 맡았음. 이커머스 사이드 프로젝트인데, 첫 커밋부터 설정 파일만 4개 깔았음. config 폴더, ESLint, Prettier, gitignore. 기능 코드 한 줄 없는 initial commit이지만, 이게 나중에 가장 중요했음.
왜 처음부터 lint·format을 박았나
- 협업자가 들어오기 전에 룰을 고정해두면 PR 리뷰 때 "스페이스 vs 탭" 같은 잡소리가 사라짐
- 에디터 저장하면 자동 포맷되니까 머리로 신경 안 써도 되는 영역이 늘어남
- Prettier·ESLint를 분리 운영해서 포매팅은 Prettier, 코드 품질 룰은 ESLint가 맡게 함
처음엔 한 파일에 다 몰아넣을지 고민했는데, 책임을 분리하는 쪽이 디버깅도 편하다는 결론.
.gitignore — 의외로 가장 까다로움
.gitignore는 그냥 템플릿 복붙하면 될 줄 알았는데 아니었음. 사이드 프로젝트지만 결제대행사 연동 키 같은 게 들어갈 가능성이 있어서 환경변수 파일 패턴을 처음부터 강하게 잡아둠.
| 패턴 | 이유 |
|---|---|
.env* (.env.example 제외) |
시크릿 유출 방지 |
dist/, build/ |
빌드 산출물은 재생성 가능 |
.DS_Store, Thumbs.db |
OS 잡 파일 |
coverage/ |
테스트 리포트 |
.env.example만 살리는 부분에서 한 번 실수해서 push 직전 알아챘음. 처음부터 꼼꼼히 박아두길 잘했음.
config 폴더 — 빈 자리부터 잡기
config 폴더는 비어있는 상태로 커밋. 환경별 설정 파일이 들어갈 자리만 잡아둔 거. 처음엔 "빈 폴더 커밋이 의미 있나?" 했는데, 막상 다음 커밋에서 dev/prod 설정 추가할 때 자리가 정해져 있으니 고민할 거리가 줄었음. 구조 먼저 잡고 채우는 게 확실히 빠름.
회고
기능 한 줄 없는 첫 커밋에 1시간 넘게 썼는데, 이후 작업 속도 보면 충분히 본전 뽑았음. 특히:
- eslint-config 베이스를 한 번 정해두니까 새 파일 만들 때 룰 고민이 없음
- format-on-save가 켜져 있으니 코드 리뷰가 로직에만 집중됨
- 협업자 추가될 때 README 한 줄("
npm run lint")이면 온보딩 끝남
다음 커밋부터 실제 도메인 모델 들어갈 예정. 끝
댓글 0
첫 댓글 달아줘.