Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. expanding-collection

expanding-collection

MITSwift

An animated material design UI card peek/pop controller for iOS apps.

Visit WebsiteGitHubGitHub
5.5k stars522 forks0 contributors

What is expanding-collection?

ExpandingCollection is an iOS library that provides an animated material design UI card peek/pop controller. It allows developers to create interactive card-based interfaces where users can tap to expand cards into detailed views, implementing a smooth, engaging transition animation. The library solves the need for custom, high-quality animated UI components in iOS apps without requiring extensive animation code.

Target Audience

iOS developers building apps that require interactive, animated card-based interfaces, such as product showcases, portfolios, or content browsers. It's particularly useful for those seeking pre-built, customizable material design components.

Value Proposition

Developers choose ExpandingCollection for its ready-to-use, polished animations that follow material design principles, saving development time. Its structured API and subclass-based approach make integration straightforward while allowing deep customization of card behavior and appearance.

Overview

:octocat: ExpandingCollection is an animated material design UI card peek/pop controller. iOS library made by @Ramotion

Use Cases

Best For

  • Creating interactive product showcases with expandable details
  • Building portfolio apps with animated card galleries
  • Implementing material design card interfaces in iOS
  • Adding peek/pop interactions to collection views
  • Developing onboarding or tutorial screens with step-by-step cards
  • Enhancing user engagement with smooth, custom transitions

Not Ideal For

  • Apps built entirely with SwiftUI due to its UIKit foundation
  • Projects targeting iOS versions below 9.0, as it requires iOS 9.0+
  • Teams needing rapid prototyping with minimal configuration, given the detailed cell setup with XIB files and constraints
  • Applications where binary size is a critical concern, since it adds a third-party dependency

Pros & Cons

Pros

Polished Material Design

Follows material design principles out of the box, providing modern, intuitive UI components that enhance visual appeal without custom design work.

Smooth Animated Transitions

Offers customizable peek/pop animations with built-in support for front and back views, ensuring engaging user interactions as demonstrated in the GIF.

Straightforward UIKit Integration

Works as a subclass of UICollectionViewController, making it easy to drop into existing iOS projects with minimal boilerplate code.

Flexible Cell Customization

Supports custom front and back views with hidden view options during transitions, allowing developers to tailor content display per the README examples.

Cons

Complex Initial Setup

Requires creating cells with specific XIB files, constraints, and outlets, which can be error-prone and time-consuming compared to simpler UI components.

UIKit-Only, No SwiftUI

Built exclusively for UIKit, so it's incompatible with SwiftUI projects without additional bridging or wrapper code, limiting modern iOS development approaches.

Vendor Lock-In Risk

Heavy reliance on subclassing from ExpandingViewController and BasePageCollectionCell makes it difficult to migrate away or integrate with other libraries seamlessly.

Limited iOS Version Support

Only supports iOS 9.0+, excluding apps that need to target older devices, and lacks mention of updates for recent iOS versions or Swift changes.

Frequently Asked Questions

Quick Stats

Stars5,523
Forks522
Contributors0
Open Issues24
Last commit6 years ago
CreatedSince 2016

Tags

#mobile-ui#ios#open-source#ui-animation#library#animation#ui#collection-view#material-design#swift#component#card-ui#uikit

Built With

U
UIKit
i
iOS
S
Swift

Links & Resources

Website

Included in

iOS51.7k
Auto-fetched 1 day ago

Related Projects

folding-cellfolding-cell

:octocat: 📃 FoldingCell is an expanding content cell with animation made by @Ramotion

Stars10,205
Forks1,142
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub