Skip to content
This repository has been archived by the owner on Jan 20, 2023. It is now read-only.
/ MVVMKit Public archive

Lets try to develop library which can be used when implementing MVVM for iOS

License

Notifications You must be signed in to change notification settings

HeMet/MVVMKit

Repository files navigation

MVVMKit

Background

MVC as Massive View Controller. Navigation logic scattered around Storyboard, prepareForSegue: and "plain code" approach.

Goal

Implement a MVVM library that works together with UIKit and has the following features:

  • Provides a way to describe navigation flow programmatically.
  • Such description should not be placed all over the UI implementation.
  • Type safe.
  • Way to bind View Model to View.
  • Moves decision about when and where transitions shold occur to View Models.
  • Integrates with Storyboard.
  • Binds collections of View Models to UITableView, UICollectionView, etc.
  • Allows to test View Models without View layers.
  • Reduce boilerplate code usual for UIKit: registration of table cells, loading view controllers from storyboard, etc.

Benefits

View layer (View + UIViewController) no more contains "semi-UI semi-Model" logic. Easier to write functional tests. You can describe how to instantiate UIView or UIViewController (by initializer, from Storyboard or Nib) and provide additional information like Reuse Identifiers. More importantly MVVMKit using it to setup Views for you.

Documentation

Not ready yet. Please, see example project DLife.

About

Lets try to develop library which can be used when implementing MVVM for iOS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published