tjnet / NewsAppSwiftMVVM

SmartMVVMNews is an example app exploring RxSwift 4, MVVM, Swift 2.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NewsAppSwiftMVVM is an example app exploring RxSwift, MVVM, Swift 2.

NOTE: This is work in progress.

Screenshots

20160111_23_35

Setup

The app uses CocoaPods for handling third-party dependencies. To build the app, simply clone the repository and then run pod install.

Version

  • 1.2: A lot has been refactored, and a lot of protocols and protocol extensions has been added. Watch app should now work without the phone.
  • 1.1: Apple Watch support using watchOS 2.
  • 1.0: Initial version. Supports Xcode7.3+ and Swift 2.

User Features

  • View list of articles
  • Pull-to-refresh any list in the app
  • Get alerts about network and server errors
  • Enjoy custom fonts and colors
  • See animated list changes

Code Checklist

  • Move base URL to Settings for easy customization
  • Cancel network requests when the associated view becomes inactive
  • Write tests for models
  • Write tests for services
  • Write tests for viewmodels
  • Write tests for viewcontrollers
  • Write tests for custom cell
  • Write tests for helpers and store
  • Write models
  • Write view models
  • Write tableviewcell
  • Write viewcontrollers
  • Make backend in Swift and move to this repo.

Useful resources

sample for MVP

sample for refactoring

sample for testing(XCTest)

About

SmartMVVMNews is an example app exploring RxSwift 4, MVVM, Swift 2.

License:MIT License


Languages

Language:C++ 50.0%Language:Swift 28.9%Language:Objective-C 9.6%Language:Objective-C++ 8.5%Language:Shell 2.8%Language:C 0.2%Language:Ruby 0.0%Language:Makefile 0.0%