Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

⚾️⚾️야놀자 프로젝트 Setting / Convention⚾️⚾️ #1

Open
shippingpark opened this issue May 15, 2024 · 0 comments
Open
Assignees

Comments

@shippingpark
Copy link
Collaborator

shippingpark commented May 15, 2024

요약

PR에도 남겨두었지만, 수시로 볼 내용인 것 같아 이슈에 남겨 놓았어용!
프로젝트 구조를 확립하고 초반 설계를 공유합니당!

작업 스크린샷

image

우리 프로젝트 구조입니당!
우리가 직접 작성하는 폴더구조, 즉 프로젝트는 다섯 개로 분리되어 있어요!

image

각 폴더 분류에 대한 설명은 아래와 같습니다!

App

앱의 시작점을 모아 둔 장소 입니다

Data: 에디

에디가 해줄거에요! ㅎㅎ
데이터 CRUD를 처리할 장소 입니다

DesignSystem: 로셸, 구름

앱 전반에서 공통적으로 사용되는 것들을 한 데 모아 둘 장소 입니다
중복을 줄이고, 효율적인 작업을 하기 위함입니다!

Domain

우리의 Usecase와 Entity가 존재하는 장소 입니다!

Screens: 브리, 로셸, 구름, 고스트

사용자 기준 화면 전체를 말합니다! 우리 팀의 화면은 총 네 개 입니다 ㅎㅎ

  1. 홈 화면
  2. 팀 별 정보 화면
  3. 직관 리스트 화면
  4. 직관 정보 화면 (추가/수정)

공유 사항

Font설정 시 직접적으로 Font의 사이즈를 지정하면 안 돼요! 🔥🔥👩‍🚒

그러면 Dynamic하게 움직이는 뷰를 만들 수 없습니다

동적으로 움직이는 화면은 어떻게 만들어야할까?
우리의 소소한 챌린지 문장으로 !!
이건 우리의 내기 !!

사용하는 Tool 🔧

SwiftLint

SwiftLint를 사용하여 엄격히 코드 스타일을 제한합니다!
스타일을 어기게 되면 노란 에러가 발생하게 되니 주의해주세요!

Tuist

프로젝트 파일 충돌을 방지하기 위해 Tuist를 사용하여 소스코드만 깃허브에 올립니다!
깃허브에 올라간 파일에는 프로젝트 파일이 포함되어 있지 않으니,
프로젝트를 실행하기 위해 아래 두 단계를 거칩니다

  1. tuist 버전 3.35.5으로 다운로드

curl https://mise.run | sh
~/.local/bin/mise --version

echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc

입력 뒤 터미널 끄고 다시 켜기

mise install tuist

tuist 버전 바꾸기

mise use [email protected]

프로젝트 파일로 들어가서, 앞으로 pull 이후 프로젝트 파일 생성 시 SwiftLint를 함께 실행하기 위해 아래 명령어 작성

ROOT_DIR=${PWD} tuist generate

Code Convention

CommitConvention: 가장 작은 작업 단위

ex) [✏️Comment] 사소한 주석 삭제

✨Feat

새로운 기능 추가

💄UI

디자인 적인 요소가 변경되었을 때

✏️Comment

주석 추가 및 변경, 코드 포맷 변경 등 가독성 향상과 관련

📚Docs

문서 수정

🔨Refactor

production code를 수정하는 경우 
(변수의 네이밍을 수정하는 경우)

☔️Test

테스트 코드를 수정하거나, 추가하는 경우 
(코드의 변화가 생산적인 것이 아닌 경우)

🔥HOTFIX

급하게 치명적인 버그를 고쳐야 하는 경우

커밋은 가장 작은 작업 단위 입니다!
게임을 저장하듯, 각 커밋이 작업의 save 지점으로 동작하니 수시로 커밋 남기기!

PR Convention: 원본 Repository에 Push할 작업 단위 (커밋 묶음)

제목 양식

[Feat] 맵 어쩌구 궁시렁 변경

[]안에는 커밋과 마찬가지로, 모든 커밋 중 대표되는 카테고리를 기입하면 됩니다!
뒤에는 해당 PR이 어떤 작업인 지 설명해 주세요!

본문 양식

만들어서 넣어 둘게여!

팀 협업

우리는!! 언제든 묻고, 같이 고민하는 팀이니까 문제가 있다면 언제든 바꿔용!!
포기는 업따!!!

image

@shippingpark shippingpark self-assigned this May 15, 2024
shippingpark added a commit that referenced this issue May 15, 2024
[Settings] #1 프로젝트 세팅: SwiftLint / Tuist / 프로젝트 구조
shippingpark added a commit that referenced this issue May 16, 2024
[Settings] #1 프로젝트 세팅: 단어 통일 / Model 단어 사용 / DataInterface
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant