3232
3333## 앱 사용해보기
3434
35- iOS 17 이상 환경에서 App Store에서 다운로드 가능
36-
3735<a href =" https://apps.apple.com/us/app/devlog/id6760288611 " >
3836 <img src =" https://img.shields.io/badge/App%20Store-0D96F6?style=flat&logo=appstore&logoColor=white " />
3937
@@ -53,8 +51,7 @@ Todo, 저장 링크, 오늘 할 일, 받은 알림, 누적 활동을 하나의
5351
5452## 아키텍처
5553
56- MVVM을 기반으로 하되, ViewModel 상태 관리에는 MVI 형태의 단방향 흐름을 차용한 구조
57- ` DevLog.xcworkspace ` 안에서 Application, Widget 모듈을 분리하고 화면, 상태, 비즈니스 로직, 외부 의존성 경계를 나눈 ` MVVM + Clean Architecture ` 기반 구성
54+ ` DevLog.xcworkspace ` 안에서 Application, Widget 모듈을 분리하고 화면, 상태, 비즈니스 로직, 외부 의존성 경계를 나눈 ` Clean Architecture ` 기반 구성
5855
5956<table >
6057 <tr >
@@ -65,14 +62,6 @@ MVVM을 기반으로 하되, ViewModel 상태 관리에는 MVI 형태의 단방
6562 <tr >
6663 <td align="center">Tuist 모듈 의존성 그래프</td>
6764 </tr >
68- <tr >
69- <td align="center">
70- <img alt="StorePattern Protocol" src="./docs/store-protocol.png" />
71- </td>
72- </tr >
73- <tr >
74- <td align="center">StorePattern 프로토콜</td>
75- </tr >
7665</table >
7766
7867## 주요 기능
@@ -135,14 +124,16 @@ MVVM을 기반으로 하되, ViewModel 상태 관리에는 MVI 형태의 단방
135124
136125| 구분 | 스택 |
137126| --- | --- |
138- | Deployment Target | iOS 17+ |
139- | Architecture | Modular Architecture, MVVM, MVI-inspired state flow, Clean Architecture |
140- | UI | SwiftUI, Charts, MarkdownUI |
141- | State & Async | Observable, Combine, async/await |
142- | Backend | FirebaseAuth, FirebaseFirestore, Firebase Cloud Functions, FirebaseMessaging |
143- | Apple Frameworks | AuthenticationServices, UserNotifications, LinkPresentation, Network |
144- | Utility | GoogleSignIn, OrderedCollections |
145- | Tooling | Xcode, Tuist, mise, Swift Package Manager, SwiftLint, Fastlane |
127+ | Deployment Target | iOS / iPadOS 17.0+ |
128+ | Platform Support | iPhone, iPad, Apple Silicon Mac (App Store, Designed for iPad) |
129+ | Architecture | Tuist Modular based Clean Architecture |
130+ | UI | SwiftUI, MarkdownUI, WidgetKit, AppIntents |
131+ | State & Async | Observable, Combine, async/await, The Composable Architecture |
132+ | Backend | Firebase Authentication, Firestore, Cloud Functions, Cloud Messaging, Analytics |
133+ | Apple Frameworks | AuthenticationServices, UserNotifications, LinkPresentation, Network, CryptoKit, os.log |
134+ | External Packages | ComposableArchitecture, MarkdownUI, OrderedCollections, GoogleSignIn, Nexa |
135+ | Testing | swift-testing, TCA TestStore |
136+ | Tooling | Xcode, Tuist, mise, Swift Package Manager, SwiftLint, Fastlane, Firebase CLI |
146137
147138## 개발 환경 구성
148139
@@ -155,11 +146,13 @@ MVVM을 기반으로 하되, ViewModel 상태 관리에는 MVI 형태의 단방
155146
156147| 항목 | 버전 |
157148| --- | --- |
158- | Xcode | 26.3 |
149+ | Xcode | 26.5 |
159150| iOS Deployment Target | 17.0 |
160151| Swift | 5.0 |
161152| Tuist | 4.194.4 |
162- | Ruby | 3.2 |
153+ | SwiftLint | 0.63.3 |
154+ | Ruby | 3.4.7 |
155+ | Bundler | 2.7.2 |
163156| Fastlane | 2.232.2 |
164157| Node.js | 22 |
165158| TypeScript | 4.9.5 |
0 commit comments