- Started from Pawel Krawiec's ios-architecture & Bo-Young PARK's BringMyOwnBeer-
- Studied MVVM+RxSwift with Miguel Lin's RxSwift-MVVM-Demo
- Studied Coodinator Pattern with wojciech-kulik's Swift-MVVMC-Demo
- Studied Clean Architecture with Oleh's iOS-Clean-Architecture-MVVM
Thank for people of this list!
List | Search | Random |
---|---|---|
![]() |
![]() |
![]() |
Swift 5, Xcode 12.5
Image Download - Kingfisher
Package Management - Cocoapods
$ pod install
UI - Storyboard
Network - URLSession
UI - SnapKit
Network - URLSession
UI - SnapKit, Then
Network - URLSession
UI - Storyboard, RxDatasource
Network - RxURLSession
Unit Tests π - RxTest
UI - Storyboard, RxDatasource
Network - RxURLSession
Unit Tests π - RxTest
Xcodegen π
$ brew install xcodegen
$ cd MVVM-RxSwift-xcodegen/
$ xcodegen
UI - Storyboard, RxDatasource
Network - RxURLSession
Unit Tests π - RxTest
Tuist π
$ bash <(curl -Ls https://install.tuist.io)
$ cd MVVM-RxSwift-tuist/
$ tuist generate
SPM,
- Rome, Carting, Fastlane
$ chmod +x carthage.sh
$ ./carthage.sh update --platform iOS
Reference
UI - SnapKit, Then, RxDatasource
Network - Moya
Unit Tests π - RxTest
UI - SnapKit, Then, RxDatasource
Network - RxURLSession
Repositoy Pattern - CoreData
Unit Tests π - RxTest, Nimble
βοΈ Bug : If the simulator saves more than 1 page of beer list in CoreData, CoreDataManagerTest's randomTests fails. If you know a solution, Please PR.
UI - SnapKit, Then, RxDatasource
Network - RxURLSession
Repositoy Pattern - Realm
Unit Tests π - RxTest, Nimble
UI - SnapKit, Then, RxDatasource
Network - RxURLSession
Repositoy Pattern - Sqlite3
Unit Tests π - RxTest, Nimble
βοΈ Bug : CoreDataTests same.
UI - SnapKit, Then, RxDatasource
Network - Moya
Unit Tests π - RxTest, Nimble, Quick
CI - Github Actions π
UI - SnapKit, Then, RxDatasource
Network - Moya
Unit Tests π - RxTest, Nimble, Quick
CI - Github Actions π
DI - Swinject
UI - SnapKit, Then, RxDatasource
Network - Moya
Unit Tests π - RxTest
βοΈ Alert : I used ' DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) ' Because If tabbarflow does not navigate to a total of 3 flows, it cannot navigate to an alert. If you know a better solution, please PR!
βοΈ Alert : I used ' DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) ' Because If tabbarflow does not navigate to a total of 3 flows, it cannot navigate to an alert. If you know a better solution, please PR!
βοΈ Bug : CoreDataTests same.
UI - SnapKit, Then, RxDatasource
Network - Moya
Unit Tests π
βοΈ Alert : I used ' DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) ' Because If tabbarflow does not navigate to a total of 3 flows, it cannot navigate to an alert. If you know a better solution, γ
9. VIPER + Rx
UI - SnapKit, Then, RxDatasource
Network - Moya
Unit Tests π - RxTest
VIPER Template - VIPER + Rx Xcode Template
10. RIBs + Rx
Package Management - SPM
UI - SnapKit, Then, RxDatasources
Network - Moya
Unit Tests π
Reference
1. SwiftUI- MV
Using @State only
Network - Moya
2. SwiftUI-MVVM
Using @Published
Network - Moya
Unit Tests π
Using Combine's PassthroughSubject
Network - Moya
Unit Tests π
Using Combine's PassthroughSubject
Network - Moya
Unit Tests π