i-Punks-SwiftUI
Sample repository for learning SwiftUI & Combine.
This repository is a rewrite of the following MVVM (RxSwift) app with SwiftUI and Combine.
https://github.com/iiinaiii/i-Punks
Environment
Xcode11 beta5
Architecture overview
MVVM + Layerd architecture
MVVM
- Same as common MVVM, it divides the responsibilities into View/ViewModel/Model
Layered architecture
- Model layer is divided into three, UseCase/Domain/Infra, according to each responsibility.
Combine
- Combine is used to pass the data of each layer.
SwiftUI
- SwiftUI is used to display View contents.
ScrollView
is probably unstable, not able to display multiple lines of Text and all content.