Skip to content

SOPT-all/35-APPJAM-iOS-MEMENTO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

TODO의 자율 주행, $\huge{\color{#29FF74}Memento}$

Memento는 사용자가 할 일을 입력하면 AI가 이를 자동으로 정렬하고 최적의 타임라인을 생성하는 자율주행 개념의 생산성 서비스입니다.


 Developers


@mcrkgus

@jeonguk29

@sem-git

@rafa-e1

@parkikbum
mcrkgus jeonguk29 sem-git rafa-e1 parkikbum

🔗 Flow Chart

Flow Chart


Conventions

💻 Code Convention
📝 Git Convention
👀 PR Convention


Git Flow

❗️main 브랜치에서는 작업 $\huge{\color{#FF4D4D}\ 절대\ 금지}$

git-flow

1️⃣ 이슈 생성

작업할 내용을 정의하고 이슈 생성

2️⃣ 로컬 환경 최신화

내 로컬에서 develop 브랜치가 최신 상태인지 확인 develop 브랜치 pull로 항상 최신 상태 유지

3️⃣ 새로운 이슈 브랜치 생성

develop 브랜치에서 새로운 브랜치 생성

브랜치 이름은 다음 형식으로 작성: 커밋 타입/#(이슈번호)

ex) feature/#123

4️⃣ 브랜치에서 작업 진행

생성한 브랜치에서 작업을 시작

5️⃣ 커밋 작성

작업한 기능 단위로 작은 커밋을 작성 (작업 흐름이 잘 드러나도록 커밋을 세분화)

6️⃣ 작업 완료 후 에러 확인

⭐️ 작업이 완료되었으면 에러가 없는지 확인 ⭐️

기능이 정상적으로 동작하고, 문제가 없음을 확인 후 push

7️⃣ 브랜치 Push 및 PR 생성

브랜치를 원격 저장소에 push

작업한 내용을 병합하기 위해 Pull Request 생성

8️⃣ 코드 리뷰 및 수정 반영

리뷰 받은 사항을 반영 후 수정

모든 수정이 완료되면 develop 브랜치에 병합


📂 Foldering

📁 Project
├── 📁 Resource
│   └── 🎨 Assets.xcassets
├── 📁 Source
│   ├── 📁 App
│   │   ├── 📄 Config.swift
│   │   └── 📄 Memento_iOSApp.swift
│   ├── 📁 Component
│   │   ├── 📁 Alert
│   │   ├── 📁 MementoCell
│   │   ├── 📁 TabBar
│   │   ├── 📁 TimePickerView
│   │  ...
│   ├── 📁 Const
│   │   └── 📄 StringLiteral.swift
│   ├── 📁 Data
│   ├── 📁 Extension
│   ├── 📁 Network
│   │   ├── 📁 AI
│   │   │   ├── 📁 DTO
│   │   │   │   ├── 📁 Request
│   │   │   │   └── 📁 Response
│   │   │   ├── 📁 TargetType
│   │   │   └── 📄 PrioritizationAPIService.swift
│   │   ├── 📁 Base
│   │   │   ├── 📄 BaseAPIService.swift
│   │   │   ├── 📄 BaseDTO.swift
│   │   │   ├── 📄 BaseTargetType.swift
│   │   │   ├── 📄 MoyaPlugin.swift
│   │   │   ├── 📄 NetworkResult.swift
│   │   │   ├── 📄 NetworkService.swift
│   │   │   ├── 📄 TokenKeychainManager.swift
│   │   │   └── 📄 TokenRefreshPlugin.swift
│   │  ...
│   ├── 📁 Presentation
│   │   ├── 📁 Add
│   │   │   ├── 📁 AddSchedule
│   │   │   │   ├── 📁 Model
│   │   │   │   ├── 📁 View
│   │   │   │   └── 📁 ViewModel
│   │   │  ...
│   │   ├── 📁 Main
│   │   └── 📁 Onboarding
│   └── 📁 Utils
└── 📄 Info.plist

Library

Name Version
Alamofire 5.10.2 HTTP 네트워크 통신을 간단하고 효율적으로 처리할 수 있도록 지원한다.
Firebase 11.7.0 데이터베이스, 인증, 클라우드 기능 등을 쉽게 구현할 수 있도록 지원한다.
Moya 15.0.3 네트워크 요청을 효율적이고 구조적으로 관리하기 위해 설계된 네트워크 추상화 라이브러리로, 코드의 가독성과 유지 보수성을 높인다.
Lottie 4.5.1 JSON 기반의 벡터 애니메이션을 iOS 앱에서 쉽게 추가하고 관리한다.

Memento Library

Name Version
MCalendar 1.0.4 달력 기반의 UI 및 일정 관리 기능을 제공하는 Memento 팀이 자체 제작한 라이브러리
MDSKit 1.0.1 디자인 시스템에 기반한 공통 UI 컴포넌트 및 유틸리티를 제공하는 Memento 팀의 커스텀 라이브러리

Trouble Shooting

🔥 Trouble Shooting

About

아멘(아요메멘토)입니다

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages