Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

185 Commits
 
 
 
 
 
 
 
 

Repository files navigation

그로우립

목차

프로젝트 소개

회고를 희망하는 사람들이 손쉽게 회고를 작성할 수 있도록 도와주는 회고 작성 서비스
🔗 앱 다운로드 링크

  • 팀 구성
    • iOS 개발자 1명, Android 개발자 1명, 백엔드 개발자 1명, 디자이너 1명, PM 1명
  • 진행 기간
    • 2022.11 ~ 2023.03
  • 기술 스택
    • 언어 : Swift
    • UI: UIKit, 코드 방식(SnapKit)
    • 비동기 처리 : RxSwift, RxCocoa
    • 네트워킹 : Moya
    • 이미지 처리: Kingfisher
    • 푸시 알림 : Firebase
    • 협업: Slack, Figma, Zeplin

Architecture

MVVM-C


  • 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) 마이페이지

  • 회고 기록 확인, 회고 수정, 프로필 수정, 기타 알림 설정 등을 제공합니다,

About

KPT를 통해 회고를 쉽게할 수 있도록 도와주는 회고 작성 플랫폼

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages