A Swift library that replicates the App Store's card expand animation for UICollectionView and UITableView cells in iOS apps.
appstore-card-transition is an open-source iOS library that implements a custom animated transition to replicate the App Store's card expansion effect. It allows developers to smoothly animate between a card-based cell in a UICollectionView or UITableView and a full-screen detail view controller. The library solves the need for a polished, interactive transition that enhances user experience in iOS apps with minimal setup.
iOS developers building apps with card-based interfaces who want to add App Store-like animated transitions between list/detail views. It's particularly useful for those using UICollectionView or UITableView to display content in a card layout.
Developers choose appstore-card-transition because it provides a ready-to-use, customizable implementation of a popular iOS animation pattern, saving development time. Its simple protocol-based integration and flexibility for customization make it a practical alternative to building complex transition animations from scratch.
Appstore card animation transition. UICollectionView and UITableView card expand animated transition for iOS
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Accurately replicates the smooth card expansion effect from the iOS App Store, providing a polished user experience that enhances app credibility.
Works seamlessly with both UICollectionView and UITableView, covering common iOS UI patterns without requiring separate implementations.
Supports top and bottom swipe gestures for dismissals, as shown in the example GIFs, allowing interactive and intuitive user controls.
Offers action blocks for tracking animation progress, enabling developers to sync custom animations or UI changes during transitions.
Requires implementing multiple protocols (CardCollectionViewCell, CardDetailViewController) and managing constraints carefully, which the README admits can lead to animation glitches if not done correctly.
Only supports iOS 11.0+ due to Swift 5.0+ requirements, excluding apps that need to target older iOS versions without additional workarounds.
Mandates calling dismissHandler in scrollViewDidScroll, a step easily missed that can break dismiss animations, adding fragility to integration.