회고를 희망하는 사람들이 손쉽게 회고를 작성할 수 있도록 도와주는 회고 작성 서비스
🔗 앱 다운로드 링크
- 팀 구성
- iOS 개발자 1명, Android 개발자 1명, 백엔드 개발자 1명, 디자이너 1명, PM 1명
- 진행 기간
- 2022.11 ~ 2023.03
- 기술 스택
- 언어 : Swift
- UI: UIKit, 코드 방식(SnapKit)
- 비동기 처리 : RxSwift, RxCocoa
- 네트워킹 : Moya
- 이미지 처리: Kingfisher
- 푸시 알림 : Firebase
- 협업: Slack, Figma, Zeplin
-
Common: 앱 공통/전역으로 쓰이는 Common View, Model, Service 등
-
Base: 앱의 ViewController, ViewModel, Coordinator와 APIService에 공통적으로 사용되는 속성을 정의하며, Feature의 각 요소는 해당 Base 클래스를 상속함으로써 코드 재사용성 향상
-
Presentation Layer
- Component: 화면 별로 필요한 ViewController, ViewModel을 소유하며 화면 전환 가능성이 있는 Component를 생성 및 전달
- Coordinator: ViewController의 화면 전환 및 전환에 따른 추가 작업 로직 분리, 화면 계층 관리
- ViewModel: Moya 기반의 APIService에서 통신한 내용과 UserDefaults의 localDB에 의존하여 데이터를 획득하며, View는 ViewModel을 바인딩함 (RxSwift, RxCocoa)
- Input/Output Modeling: ViewModel의 Nested Type으로 Input 및 Output 구조체를 추가하여 View에서 ViewModel로 입력이 들어오는 부분은 Input, ViewModel에서 View로 출력되는 부분은 Output으로 분리하여 코드 가독성 향상
-
Data Layer
- APIService, KeyChainService: 네트워크 통신, KeyChain을 통해 Presentation Layer에 데이터 제공
1) 로그인 / 회원가입 / 비밀번호 찾기
- 이메일 로그인 방식이며 인증은 휴대폰 번호로 진행합니다. (Firebase Auth)
2) 홈 화면
- 일주일간 작성한 회고 기록, 해당 월 회고 데이터를 달력을 통해 확인할 수 있습니다.
3) 회고 탭
- 회고 기록 현황을 애니메이션과 함께 보여주고, 회고를 DONE / KEEP / PROBLEM / TRY에 따라 작성할 수 있습니다.
4) 마이페이지
- 회고 기록 확인, 회고 수정, 프로필 수정, 기타 알림 설정 등을 제공합니다,
�



