SwiftyVIPER alternatives and similar libraries
Based on the "Code Quality" category.
Alternatively, view SwiftyVIPER alternatives based on common mentions on social networks and blogs.
9.7 1.6 L4 SwiftyVIPER VS chiselChisel is a collection of LLDB commands to assist debugging iOS apps.
9.5 0.0 L5 SwiftyVIPER VS MLeaksFinderFind memory leaks in your iOS app at develop time.
9.2 2.1 L4 SwiftyVIPER VS FBRetainCycleDetectoriOS library to help detecting retain cycles in runtime.
9.1 6.1 L5 SwiftyVIPER VS OCLintA static source code analysis tool to improve quality and reduce defects for C, C++ and Objective-C
9.1 0.0 L4 SwiftyVIPER VS FBMemoryProfileriOS tool that helps with profiling iOS Memory usage.
7.6 1.7 L5 SwiftyVIPER VS spacecommanderCommit fully-formatted Objective-C as a team without even trying.
7.5 7.0 SwiftyVIPER VS dotenv-linter⚡️Lightning-fast linter for .env files. Written in Rust 🦀
4.1 0.0 SwiftyVIPER VS MarshrouteMarshroute is an iOS Library for making your Routers simple but extremely powerful
3.6 0.0 SwiftyVIPER VS PSTModernizerMakes it easier to support older versions of iOS by fixing things and adding missing methods
2.3 3.5 SwiftyVIPER VS AnyLintLint anything by combining the power of scripts & regular expressions.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of SwiftyVIPER or a related project?
SwiftyVIPER allows easy use of VIPER architecture throughout your iOS application.
What is VIPER? Great question! VIPER is a backronym which stands for:
If all of this is totally new for you, check out my running list of VIPER Resources
- [x] VIPER Module Templates
- [x] VIPER Unit Test Templates
- [x] Simple Module Initialization and Presentation
- [x] CocoaPods Support
- [x] Carthage Support
- iOS 8.0+ | tvOS 9.0+
- Xcode 9
- Swift 4
You can use CocoaPods to install
SwiftyVIPER by adding it to your
source 'https://github.com/CocoaPods/Specs.git' use_frameworks! platform :ios, '8.0' def shared_pods pod 'SwiftyVIPER', '~> 1.0' end target 'MyApp' do shared_pods end target 'MyAppTests' do shared_pods end
To get the full benefits import
SwiftyVIPER wherever you import UIKit
import UIKit import SwiftyVIPER
Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
You can install Carthage with Homebrew using the following command:
brew update brew install carthage
To integrate SwiftyVIPER into your Xcode project using Carthage, specify it in your
github "codytwinton/SwiftyVIPER" ~> 1.0
carthage update to build the framework and drag the built
SwiftyVIPER.framework into your Xcode project.
This is discouraged, but allowed. :D
- Download and drop the
Sourcefolder in your project.
Usage of SwiftyVIPER
If you're looking for VIPER architecture templates to use directly within Xcode, you can find these in the
/Templates/VIPER folder. Open your terminal and run:
Then, simply run this command in your terminal:
mkdir -p ~/Library/Developer/Xcode/Templates/File\ Templates cp -R Templates/VIPER ~/Library/Developer/Xcode/Templates/File\ Templates
Adding a Module
Once you've installed the VIPER Templates, you're ready to add a module. Select
File > New > File or use press
⌘N to bring up the template selector. You'll find the templates at the bottom.
Module for a normal module,
Module Storyboard for a normal module that interacts with Storyboards, or
Module Tests for a module unit tests template.
Next, choose the Module name. We'll go with
This will create 5 files per module:
Don't forget to target your main app. Once you've added the main template, go ahead and add the Unit Test template. Make sure it's the same name! In this case, we'd stay with
Simply add a new module using the VIPER template. Once done, simply call:
import SwiftyVIPER CustomModule().present(from: self.viewController, style: .coverVertical, completion: nil)
The module will handle the rest, including initializing and attaching all the connections necessary for the Module to show properly.
We would love for you to contribute to SwiftyVIPER, check the
LICENSE file for more info. Pull Requests welcome!
*Note that all licence references and agreements mentioned in the SwiftyVIPER README section above are relevant to that project's source code only.