❤️ A sample Marvel heroes application based on MVVM-C architecture.
- Base on sergdort/CleanArchitectureRxSwift
- Using RxSwift - Reactive Programming in Swift
- Using RxDataSources - to manage data sources in collection and table views with RxSwift
- Using Realm & RxRealm - to save data. (Characters).
- Using Coordinators to control the navigation flow of the application
- Using Composition to avoid making use of baseviewcontroller
- Using Codable to mapping data response
- Using Fastlane to run tests in terminal
- Using Repository Pattern to manage requests and responses
- Implemented Unit Test
-
Before starting
- Run
pod install
- Get your Marvel API Keys Here
- Set your API Keys into the Marvel-Info.plist
- Open
marvel.xcworkspace
- Execute the application, explore it manually and make yourself familiar with the code.
- Run
-
Run tests in Terminal
fastlane tests
- APP
- Coordinator
- Database
- Delegate
- Extensions
- Log
- Network
- Protocols
- Domain
- Characters
- Request
- Model
- Media
- Comics
- Request
- Model
- Series
- Request
- Model
- Comics
- Repository
- Characters
- Layout
- Use Cases
- Character Detail
- Components
- Media Component
- Layout
- View
- ViewModel
- Detail Component
- Layout
- View
- ViewModel
- Media Component
- Coordinator
- View
- ViewModel
- Components
- Characters List
- Actions
- Components
- Character Component
- Layout
- View
- ViewModel
- Character Component
- Coordinator
- View
- ViewModel
- Character Detail
- CryptoSwift for encryption in MD5
- SDWebImage for load and manage images
iMark21, [email protected]