Skip to content

Latest commit

 

History

History
185 lines (173 loc) · 8.35 KB

README.md

File metadata and controls

185 lines (173 loc) · 8.35 KB

유영

KakaoTalk_Photo_2024-07-19-23-03-58

🫧About 유영

유저가 ‘공간’을 ‘영상’으로 디깅하고, 나만의 ‘공간 취향’을 발견하는 서비스

"내 취향에 맞는 공간을 촬영하고 업로드하는 숏폼을 활용하는 라이프스타일 플랫폼"
사용자들은 새로운 장소를 자유롭게 둘러보고 취향을 찾으며, 다른 사용자들과 공간 경험을 나눌 수 있습니다.
동영상을 활용하여 방문 전에도 실제와 유사한 공간감을 느낄 수 있는 공간 영상을 제공합니다. 
또한 키워드와 취향에 맞는 유저 구독 기능을 통해 무분별한 알고리즘에서 벗어나 취향에 맞는 공간 정보만 탐색할 수 있도록 하는 가치를 제공합니다. 

🫧About Team

IMG_8049 2

👤 팀원별 역할 분담

한지석 문형근 송여경
영상, 기록, 로그인 메인페이지, 회원가입 마이페이지, 버블그래프

🎥 시연 영상

스플래시 카카오 로그인 애플 로그인 탈퇴 및 로그아웃
영상 기록 내 기록 영상 인기 영상 영상 디테일
프로필(내 취향) 프로필(내 기록) 프로필(북마크) 프로필 empty
칩 키워드 타 유저 팔로잉 팔로잉 팔로워 환경설정-이용약관

Library

Tuist badge

AWS SDK Tuist Moya SnapKit Then Kakao SDK RxSwift Lottie

Foldering Convention

├── 🧩 App 
|   ├── 🗂️ Sources
│   │   ├── AppDelegate
│   │   ├── SceneDelegate
|   ├── 🗂️ Resources
│   │   ├── LaunchScreen
|   ├── 🗂️ Derived
│   │   ├── Info.plist
├── 🧩 Common
|   ├── 🗂️ Sources
│   │   ├── 🗂️ Extension
│   │   ├── 🗂️ Font
│   │   ├── 🗂️ Components
│   ├── 🗂️ Resources
│   │   ├── 🗂️ Font
│   │   ├── Asset
|   ├── 🗂️ Derived
│   │   ├── 🗂️ InfoPlists
│   │   ├── 🗂️ Sources
├── 🧩 Core
│   ├── 🗂️ AWS
│   ├── 🗂️ Base
│   ├── 🗂️ Cache
│   ├── 🗂️ Coordinator
│   ├── 🗂️ Model
│   ├── 🗂️ Network
│   ├── 🗂️ OAuth
│   ├── 🗂️ Photos
...
├── 🧩 Presentation
│   ├── 🗂️ TabBar
│   ├── 🗂️ Home
│   ├── 🗂️ Login
│   ├── 🗂️ SignUp
│   ├── 🗂️ MyProfile
│   ├── 🗂️ Video
│   ├── 🗂️ UploadVideo

프로젝트 컨벤션

Coding Convention

1. 여백 두칸으로 고정
2. 함수명은 주어 + 동사 + (목적어)
3. UI는 set ~ 으로 작성하고 순서는 setStyle() -> setUI() -> setAutolayout(). 오토레이아웃은 상, 하, 좌, 우, 크기 순서로 지정하기
4. 접근제어자 신경써서 작성하기
5. 파라미터가 2개 이상이다 ? -> Command + M
6. Command + I 수시로 하기
7. 컴포넌트 -> 프로퍼티 -> 생명주기 -> UI세팅 -> 기타 함수들 -> Extension
8. TableView, CollectionView Delegate, DataSource 를 같은 클래스 내부가 아닌 Extension을 활용하여 관리하기
9. 주석 쓸거라면 코드의 위에 작성하기!
10. import 순서는 UIKit(Foundation) -> 내부 모듈 -> 외부 모듈로 선언하고 ABC 순서대로 작성

Git Flow

스크린샷 2024-06-26 오후 12 14 34
(Master == Main, Hotfix 미사용)
/// 항상 develop 브랜치가 최신 상태인지 확인해주세요 !
/// 작업 브랜치에서 작업 중에 develop 브랜치의 최신 상태가 변경되었다면?
/// -> 작업 브랜치에 머지를 해주어야 함
1. issue 생성
2. develop 브랜치에서 git checkout -b (issue 종류/#작업번호)
3. 해당 브랜치에서 작업 진행 및 커밋(커밋은 한번에 다 올리지 말기)
4. 작업 완료 후 빌드가 되는지 확인 후 원격으로 push
5. PR & merge

Commit Message

일반적인 커밋 : `feat: 버튼 작동 시 특정 이벤트 발생하는 기능 구현(#33)`
최신 작업 상황 반영 : `merge: develop into #33

#   feat        : 기능 구현(UI 포함)
#   fix         : 기능 수정
#   bug         : 버그 해결
#   refactor    : 리팩토링 
#   merge       : 최신 작업 상황 반영시
#   style       : 스타일 (코드 형식, 세미콜론 추가: 비즈니스 로직에 변경 없음)  
#   docs        : 문서 수정 (문서 추가, 수정, 삭제, README)  
#   test        : 테스트 (테스트 코드 추가, 수정, 삭제: 비즈니스 로직에 변경 없음)  
#   chore       : 기타 변경사항 (빌드 스크립트 수정, assets, 패키지 매니저 등)    
#   rename      : 파일 혹은 폴더명을 수정하거나 옮기는 작업만 한 경우  
#   remove      : 파일을 삭제하는 작업만 수행한 경우  
#   init        : 초기 생성