A Swift framework for building iOS apps following the VIPER architecture with minimal boilerplate.
Viperit is a Swift framework designed to help iOS developers implement the VIPER architecture in their applications with ease. It provides tools and templates to reduce the boilerplate code typically required for setting up VIPER modules, making the architecture more approachable. The framework supports various view types including Storyboards, XIBs, programmatic views, and SwiftUI, offering flexibility in UI development.
iOS developers and teams building medium to large-scale applications who want to adopt a clean, testable architecture like VIPER without the usual setup complexity. It's also suitable for projects transitioning to SwiftUI while maintaining architectural consistency.
Developers choose Viperit because it significantly reduces the initial setup time for VIPER, provides built-in navigation utilities, and supports modern iOS development practices including SwiftUI. Its focus on simplicity and flexibility makes VIPER architecture more practical for real-world projects.
Viper Framework for iOS using Swift
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Xcode templates automatically create all VIPER files (view, presenter, etc.), drastically reducing manual setup time as demonstrated in the module creation GIF and installation steps.
Supports Storyboards, XIBs, programmatic views, and SwiftUI via a configurable viewType enum, allowing developers to choose their preferred UI approach without framework constraints.
Built-in router functions handle common patterns like showing modules as root or modally, abstracting away boilerplate navigation code as shown in the router examples.
Includes dedicated builders for SwiftUI views, enabling seamless VIPER adoption in modern iOS projects while maintaining data flow through presenters, as outlined in the SwiftUI usage section.
Adds an external framework dependency that must be maintained via SPM, CocoaPods, or Carthage, potentially complicating builds and updates compared to lightweight, custom setups.
Tightly couples projects to the VIPER pattern, making it difficult to adapt or mix with other architectures if requirements evolve, as the framework enforces a specific structure.
Installing Xcode templates requires manual steps like copying files to Library directories, which can be error-prone and less integrated than built-in IDE tools, as noted in the setup instructions.