A parallax scroll-jacking effects engine for iOS and tvOS that simplifies complex animations in UICollectionView, UITableView, and UIScrollView.
Parade is a parallax scroll-jacking effects engine for iOS and tvOS that simplifies creating complex, scroll-driven animations in UICollectionView, UITableView, and UIScrollView. It provides a declarative blocks-based API to define start and end states for views, interpolating properties like alpha, transform, and position based on scroll progress. The framework solves the problem of messy scroll progress communication to cells, enabling smooth, coordinated animations with minimal code.
iOS and tvOS developers building apps with immersive scrolling interfaces, such as onboarding flows, media galleries, or interactive storytelling experiences. It's particularly useful for those working with UICollectionView or UITableView who want to add advanced parallax effects without managing low-level scroll delegates.
Developers choose Parade for its clean, minimal API that reduces animation boilerplate, support for 46 easing curves and customizable progress ranges, and ability to chain animations across nested views. Unlike manual implementations, it abstracts scroll progress tracking and state interpolation into a unified engine.
Parallax Scroll-Jacking Effects Engine for iOS / tvOS
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 Swift closures to define start and end states, minimizing boilerplate code for scroll-driven effects, as emphasized in the README's philosophy of reducing messy scroll progress coordination.
Includes 46 parametric easing curves like .inCubic and .outSine, providing precise control over animation interpolation, detailed in the Parametric Easing section with a reference table.
Works seamlessly with UICollectionView, UITableView, and UIScrollView, enabling coordinated animations across common iOS scrollable components, as listed in the Features section.
Allows attaching subviews to create cascading effects via the attachAnimatableView method, enabling layered parallax without manual progress relay, demonstrated in the Advanced View Animations section.
Built solely for UIKit, requiring UIViewRepresentable wrappers for use in SwiftUI projects, which adds complexity and breaks native SwiftUI animation paradigms.
Requires calling UIScrollView.initializeParade() in the app delegate, which can interfere with other scroll view behaviors and app startup processes, adding intrusive setup steps.
Confined to iOS and tvOS, excluding macOS and watchOS, and offering no cross-platform capabilities, making it unsuitable for broader Apple ecosystem or multi-platform projects.