A Swift framework for creating custom interactive view controller transitions between two views in iOS apps.
View2ViewTransition is a Swift framework for iOS that enables custom interactive animations when transitioning between view controllers. It allows developers to define specific source and destination views for the animation, creating seamless visual transitions that improve app polish. The framework handles both modal presentations and navigation stack pushes/pops with interactive gesture support.
iOS developers building apps that require polished, custom UI transitions beyond the standard system animations, such as those in photo galleries, onboarding flows, or detail views.
Developers choose View2ViewTransition for its simple protocol-based API that abstracts the complexity of UIKit transition delegates, offering fine-grained control over animations with minimal boilerplate code compared to implementing custom UIViewControllerAnimatedTransitioning from scratch.
Custom interactive view controller transition from one view to another view.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses straightforward protocols like View2ViewTransitionPresenting and View2ViewTransitionPresented to define animations, reducing boilerplate compared to manual UIViewControllerAnimatedTransitioning implementation.
Supports custom interactive gestures for both modal presentations and push/pop navigation, enabling draggable dismissals that enhance user engagement.
Allows adjustment of spring damping, velocity, and curve options via presentAnimationController and dismissAnimationController, providing precise control over transition timing.
Facilitates passing userInfo dictionaries between view controllers, simplifying state management for elements like indexPath during transitions.
Lacks support for SwiftUI, making it incompatible with modern iOS projects that adopt Apple's latest declarative UI framework.
Requires conformance to multiple protocol methods for each view controller, adding code verbosity compared to more declarative or drop-in animation libraries.
Focuses primarily on spring-based 2D view mapping animations, with no built-in support for complex effects like 3D transforms or custom timing functions beyond basic curves.