Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. PresenterKit

PresenterKit

MITSwift6.1.3

Custom presenters and better view controller presentation for iOS apps.

Visit WebsiteGitHubGitHub
547 stars29 forks0 contributors

What is PresenterKit?

PresenterKit is a Swift library for iOS that provides custom presenters and better view controller presentation APIs. It solves the problem of rigid and limited view controller presentation in iOS by offering reusable presentation controllers with custom animations and transitions.

Target Audience

iOS developers building apps that require custom view controller presentations, animations, or complex navigation flows.

Value Proposition

Developers choose PresenterKit for its clean, modular approach to view controller presentation, which simplifies creating reusable presentation controllers and provides more control over iOS UI navigation compared to standard UIKit APIs.

Overview

⚠️ Deprecated ⚠️

Use Cases

Best For

  • Implementing custom modal presentations with unique animations
  • Creating reusable presentation controllers for consistent UI navigation
  • Building iOS apps with complex view controller transition requirements
  • Enhancing standard UIKit presentation with more flexible APIs
  • Developing iOS libraries that need custom presentation logic
  • Maintaining clean separation between presentation logic and view controllers

Not Ideal For

  • Apps built primarily with SwiftUI that don't use UIKit view controllers
  • Projects targeting iOS versions below 11.0, due to its iOS 11.0+ requirement
  • Teams looking for a comprehensive UI kit that includes layout, styling, or other components beyond presentation logic
  • Simple apps where standard modal presentations suffice without custom animations or transitions

Pros & Cons

Pros

Custom Animation Support

Enables creation of reusable presentation controllers with custom animations, simplifying complex UI transitions as highlighted in the key features.

Enhanced Presentation APIs

Provides better view controller presentation APIs than standard UIKit, offering more control and flexibility for iOS navigation, as stated in the project description.

Comprehensive Documentation

Features documentation generated with jazzy and hosted on GitHub Pages, ensuring easy access and learning for developers, as mentioned in the README.

Modular Design

Follows a clean, modular approach that emphasizes reusability and separation of concerns, improving maintainability in iOS UI navigation.

Cons

SwiftLint Dependency

Requires SwiftLint for development, which adds an extra setup step and tool dependency that might not align with all team workflows.

Limited iOS Support

Only supports iOS 11.0 and above, making it unsuitable for legacy applications or projects needing broader iOS version compatibility.

Focused Scope

Specializes solely in view controller presentation, so it doesn't address other UI aspects like layout or styling, potentially requiring additional libraries for a complete solution.

Frequently Asked Questions

Quick Stats

Stars547
Forks29
Contributors0
Open Issues0
Last commit4 years ago
CreatedSince 2016

Tags

#ios#custom-animations#view-controller#ui-presentation#viewcontroller#swift-package#ios-development#cocoapods#swift#swift-library#presentation

Built With

G
GitHub Pages
S
Swift
S
SwiftLint

Links & Resources

Website

Included in

iOS51.7k
Auto-fetched 6 hours ago

Related Projects

HeroHero

Elegant transition library for iOS & tvOS

Stars22,482
Forks1,733
Last commit1 year ago
BubbleTransitionBubbleTransition

A custom modal transition that presents and dismiss a controller with an expanding bubble effect.

Stars3,303
Forks247
Last commit5 years ago
SPStorkControllerSPStorkController

Now playing controller from Apple Music, Mail & Podcasts Apple's apps.

Stars2,733
Forks201
Last commit3 years ago
TransitionTransition

Easy interactive interruptible custom ViewController transitions

Stars2,627
Forks127
Last commit5 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