@doodlincorp/eslint-config-doodlin
v0.8.1
Published
eslint config for doodlin
Downloads
327
Maintainers
Keywords
Readme
Doodlin Convention for Doodlin
두들린 프론트엔드 공용 컨벤션 라이브러리
소개
두들린 프론트에서 사용되어지고 있는, eslint 및 prettier, stylelint에 관한 관리 패키지 입니다. 버전 충돌을 피하고 비교적 단순한 배포 주기를 가져갈 수 있도록 합니다.
프로젝트 구조
rules/typescript
: 타입스크립트와 관련된 컨벤션rules/base
: 프로젝트의 기본 컨벤션rules/prettier
: prettier과 관련된 컨벤션rules/react-hooks
: react hook과 관련된 컨벤션rules/react
: react와 관련된 컨벤션rules/import
: 패키지 import와 관련된 컨벤션
패키지 버저닝
모든 패키지를 동시에 같은 버전으로 릴리즈합니다. 버저닝 방식은 하위 패키지 전체를
아우르는 Semantic Versioning을 사용합니다: MAJOR.MINOR.PATCH
로
버저닝하며, 아래 설명을 참고하여 해당하는 버전을 올립니다.a
MAJOR
version when you make incompatible API changes,MINOR
version when you add functionality in a backwards compatible manner, andPATCH
version when you make backwards compatible bug fixes.
예시
- 특정 컨벤션이 추가: 인터페이스 변경 없이 특정 컨벤션이 추가
MINOR
버전을 올립니다. - 패키지 추가: 다른 패키지에 영향이 없는 범위에서 패키지가 추가되었다면 기능
추가로 볼 수 있고,
MINOR
버전을 올립니다. - 패키지 분리: 분리 대상인 패키지의 인터페이스에 변경이 일어납니다. 해당
패키지를 이용하는 프로젝트들에 코드 변경이 필요하기 때문에
MAJOR
버전 올림에 해당합니다. - 인터페이스 개선: 인터페이스 변경이 하위 호환을 보장하는지 여부에 따라서
MAJOR
혹은MINOR
버전 올림에 해당합니다. - 버그 수정: 인터페이스 변경이 없는 버그 수정은
PATCH
버전 올림입니다.
CI/CD
- GitHub Actions를 이용해 CI/CD를 수행합니다. (예정)
- CI: 모든 PR 이벤트마다 동작합니다.
- CD: Greeting의 Production 배포와 동일하게 태그 푸쉬 이용 (예정)
기여
프로젝트 기여자들이 작업하는데 필요한 준비 및 작업 과정을 설명합니다.
Prerequisites
- NodeJS
Setup
프로젝트를 클론합니다:
$ git clone https://github.com/doodlincorp/eslint-config-doodlin.git && cd eslint-config-doodlin
디펜던시를 설치합니다:
$ yarn install
기능 추가
- 작업자가 코드 기여
- 커밋 & 푸시
- PR 생성 & 리뷰
- 버전 생성 (Optional)
- master 머지
- 태그 PUSH로 배포 (예정)
컨벤션 변경 및 추가
- 컨벤션 변경 및 추가
package.json
에 버전을 변경 한다.- 기존 컨벤션에서
breaking change
가 발생한다면,major
버전 업데이트를 진행 - 새로운 컨벤션이 추가 되었다면
minor
버전 업데이트 - 버그 픽스:
patch
- 기존 컨벤션에서
- 커밋 & 푸시
- PR 생성 & 리뷰
- master 머지
- 태그 PUSH로 배포 (예정)
Review
- 모든 PR 리뷰는 GitHub의 두들린 프론트 팀에게 할당합니다..
- 팀 멤버 1인 이상이 승인해야 머지할 수 있습니다.
- 머지 전 머지 체크리스트를 모두 확인해야 합니다.
배포하기
각 이슈의 작업자에게 찾아가 이번 릴리즈에 포함할 예정인지 물어봅시다. 이번 릴리즈에 포함해야 하는데 리뷰가 덜 된 Pull Request는 리뷰를 독려합니다.