VIP design pattern (Clean Architecture by Uncle Bob)
To learn more about Clean Swift, please read:
http://clean-swift.com/clean-swift-ios-architecture
- Download the repository and use the following commands:
- To install the templates, use the terminal and go to "VIPSwift" Folder (where the "Makefile" script is) and run the following command:
make install_templates- To uninstall the templates, use the terminal and go to "VIPSwift" Folder (where the "Makefile" script is) and run the following command:
make uninstall_templates- Once installed you should be able to see 2 more templates inside Xcode:
-
Set a scene name and it should generate all the needed files: ViewController, Interactor, Presenter, Router, View and Model
-
Additions: With or without Dependecy Injection
-
Factory Dependency Injection will add 1 more file (SceneName)Factorable, and the entire implementation will support Factory Dependecy Injection pattern
-
For more details about the implementation or how can you Unit Tests the app, please check the sample project inside repository SampleVIPSwift/SampleVIPSwift.xcodeproj
- Will create 4 Unit Test files, representing tests for each component: ViewController, Interactor, Presenter, Router
Please open a New Issue Here if you run into a problem specific to those templates, have a feature request, find a better implementation, or want to share a comment.
Pull requests are encouraged and greatly appreciated! Please try to maintain consistency with the existing code style. If you're considering taking on significant changes or additions to the project, please communicate in advance by opening a new Issue. This allows everyone to get onboard with upcoming changes, ensures that changes align with the project's design philosophy, and avoids duplicated work.




