/MarvelSwift

Swift project to test. Used: Alamofire+SwiftyJSON+Realm+DataSource+Protocols+DI+SnapKit+RxSwift+TDD

Primary LanguageSwift

#MarvelSwift

##DEMO DemoVideo2

##Info

This project is for test purposes to try Swift

##Installation

Run the following command in the root directory of your project

$ pod install

##Introduction The app uses:

· Alamofire. API inspired by grokSwift
· SwiftyJSON for the Models
· Realm Swift for the Persistence
· Autolayout - SnapKit
· Kingfisher to cache images
· External DataSource with DataType, DataSource, SourceType inspired by BlendingCultures
· MVVM
· Dependency injection + Protocols to easy structure the code and mock the tests
· Data Controllers to comunicate ApiService and ViewModel
· RxSwift for the searchBar inspired by RxSwift Examples and for the Navigation (Scenes) copied by RayWenderlich RxSwift book
· Error Handling with Result enum inspired also by RWDevCon 2017 - 23-Swift-Error-Handling. Also good to read: Testing Errors
· TDD inspired by Essential Developer TDD series (with XCTest, Quick and Nimble)
· AppDelegate & TestingAppDelegate to get fast feedback in tests
· DZNEmptyDataSet to show something when the view has no content
· SVProgressHUD to show the progress

##Requirements

  • iOS 9.0+
  • Xcode 8
  • Swift 3

##License This app project is for demonstration purposes only. Use of this source code in any form without express authorization is strictly forbidden.