You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Xcode template for VIPER Architecture for both Objective-C and Swift.
ViperC creates modules for you when you want to use VIPER architecture in your projects. You can choose your language for the VIPER modules that will be created.
Installation
Clone this repository
Go to repository main folder
./install.sh ViperC installs ViperC module for Objective-C or Swift.
./install.sh ViperC-Quick installs ViperC unit tests module for Objective-C or Swift. It uses Quick and Expecta for Objective-C and Quick and Nimble for Swift.
./install.sh ViperC-XCTest installs ViperC unit tests module for Objective-C or Swift. It uses default XCTest.
Template Path
You can find ViperC under /Users/USER_NAME/Library/Developer/Xcode/Templates/File Templates/ViperC/ViperC.xctemplate
Usage
VIPER Diagram
Generated Source Code
Example for a ToDO module:
Protocols
#pragma mark - WireFrameProtocol
@protocol ToDoWireframeProtocol <NSObject>
@end
#pragma mark - PresenterProtocol
@protocol ToDoPresenterProtocol <NSObject>
@end
#pragma mark - InteractorProtocol
@protocol ToDoInteractorOutputProtocol <NSObject>
@end
@protocol ToDoInteractorInputProtocol <NSObject>
- (void)setOutput:(id<ToDoInteractorOutputProtocol>)output;
- (id<ToDoInteractorOutputProtocol>)getOutputProtocol;
@end
#pragma mark - ViewProtocol
@protocol ToDoViewProtocol <NSObject>
@end