Open Source for iOS Developers - iOS Frameworks
A collaborative list of awesome UI & Animation only in Swift.

Open Source for iOS Developers

Click on the section name to see all the frameworks with the previews. If you know a good library or library author, feel free to add it to this project.

Open on github.com Add Framework

Activity Indicator

A view that shows that a task is in progress.

NVActivityIndicatorView

Collection of nice loading animations.

LoaderUI

Collection of nice loading animations, implemented in SwiftUI.

SwiftSpinner

A beautiful activity indicator and modal alert written in Swift (originally developed for my app DoodleDoodle) Using blur effects, translucency, flat and bold design - all iOS 8 latest and greatest.

GradientLoadingBar

A customizable animated gradient loading bar.

LiquidLoader

Spinner loader components with liquid animation.

ParticlesLoadingView

A customizable SpriteKit particles animation on the border of a view.

DSGradientProgressView

Simple and customizable animated progress bar written in Swift.


Activity Indicator / Skeleton

While the processes are working, usually developers place a loading view to show users that something is going on and prepare them for which contents are waiting.

SkeletonView

An elegant way to show users that something is happening and also prepare them to which contents they are awaiting.

LoadingShimmer

An easy way to add a shimmering effect to any view with just one line of code. It is useful as an unobtrusive loading indicator


Action Sheet

An action sheet is a specific style of alert that presents two or more choices related to the current context.

PopMenu

A fully customizable popup style menu for iOS.

SPPermissions

Ask permissions on Swift. Available List, Dialog & Native interface. Can check state permission.

BulletinBoard

BulletinBoard is an iOS library that generates and manages contextual cards displayed at the bottom of the screen. It is especially well suited for quick user interactions such as onboarding screens or configuration.

alerts-and-pickers

Advanced usage of UIAlertController and pickers based on it: Telegram, Contacts, Location, PhotoLibrary, Country, Phone Code, Currency, Date.

CFAlertViewController

It is a highly configurable iOS library which allows easy styling with built in styles as well as extra header and footer views so that you can make extremely unique alerts and action sheets.

Hokusai

A Swift library to provide a bouncy action sheet.

TKSwarmAlert

Animated alert library like Swarm app.

DOAlertController

Simple Alert View written in Swift, which can be used as a UIAlertController.


Alert

Alerts convey important information related to the state of your app or the device, and often request feedback.

SPAlert

Native alert from Apple Music & Feedback. Contains Done, Heart & Message and other presets. Support SwiftUI.

SPIndicator

Floating indicator, mimicrate to indicator which appear when silent mode turn on / off. Support large texts.

SCLAlertView-Swift

Animated Alert View written in Swift, which can be used as a UIAlertView or UIAlertController replacement.

Loaf

A Swifty Framework for Easy iOS Toasts.

PMAlertController

Great and customizable alert that can substitute UIAlertController.

Dodo

A message bar for iOS written in Swift.

SwiftMessages

A very flexible message bar for iOS written in Swift.

NotificationBanner

The easiest way to display highly customizable in app notification banners in iOS.

SwiftEntryKit

SwiftEntryKit is a presentation library for iOS. It can be used to easily display overlays within your iOS apps.

DOAlertController

Simple Alert View written in Swift, which can be used as a UIAlertController.

CFAlertViewController

It is a highly configurable iOS library which allows easy styling with built in styles as well as extra header and footer views so that you can make extremely unique alerts and action sheets.

Loafjet

Loafjet is a lightweight custom framework used to add Loafs, Dash Board, Popup Card, and Loading indicator in your Swift project.


Animation

List of animations.

Lottie

Lottie is a mobile library for Android and iOS that natively renders vector based animations and art in realtime with minimal code.

TweenKit

Animation library for iOS in Swift.

Ease

Ease is an event driven animation system that combines the observer pattern with custom spring animations as observers.

fluid-interfaces

Natural gestures and animations inspired by Apple's WWDC18 talk "Designing Fluid Interfaces".


Animation / Effects

List of ready-use effects.

SAConfettiView

Confetti

SPPerspective

Animatable widgets from iOS 14. Same animation for transform and shadow. Customisable duration, perspective and shadow also.

MPParallaxView

Apple TV Parallax effect in Swift. Rotate view using touch or accelerometer.

SPConfetti

Show the confetti only when the user is having fun, and if not having fun, don't show it.

ConfettiKit

A custom framework to add Confetti on iOS/iPadOS projects.


Animation / Transition

List of animation transitions.

Material

Material's animation.

IBAnimatable

Design and prototype customized UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable.

ViewAnimator

ViewAnimator brings your UI to life with just one line.

CKWaveCollectionViewTransition

Cool wave like transition between two or more UICollectionView.

SPStorkController

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

Hero

Elegant transition library for iOS & tvOS.

Motion

Seamless animations and transitions

Transition

Easy interactive interruptible custom ViewController transitions.

StarWars.iOS

This component implements transition animation to crumble view-controller into tiny pieces.

BubbleTransition

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

ElasticTransition

A UIKit custom transition that simulates an elastic drag. Written in Swift.

SPLarkController

Custom transition between controllers. Settings controller for your iOS app.

JTMaterialTransition

An iOS transition for controllers based on material design.

FloatingPanel

A clean and easy-to-use floating panel UI component for iOS.

liquid-swipe

Transition simulates liquid when swipe to the side.

DropdownTransition

Simple and elegant dropdown transition for iOS.


Calendar

List of components and ready-use calendars.

CalendarKit

Swift calendar UI library for iOS, iPadOS and Mac Catalyst. It looks similar to the Apple Calendar app out-of-the-box, while allowing customization when needed.

JTAppleCalendar

The Unofficial Apple iOS Swift Calendar View. Swift calendar Library. iOS calendar Control. 100% Customizable.

DateTimePicker

A nicer iOS UI component for picking date and time.

CVCalendar

A custom visual calendar for iOS 8+ written in Swift.


Cards

List of cards.

Cards

Awesome iOS 11 appstore cards in swift 5.

Koloda

KolodaView is a class designed to simplify the implementation of Tinder like cards on iOS.

TisprCardStack

Swipe able, customizable card stack view, Tinder like card stack view based on UICollectionView. Cards UI.

CardParts

A reactive, card-based UI framework built on UIKit for iOS developers.

folding-cell

Expanding content cell with animation inspired by folding paper card material design.

cardslider

Cardslider is a design UI controller that allows you to swipe through cards with pictures and accompanying descriptions.

expanding-collection

ExpandingCollection is an animated material design UI card peek/pop controller.

VerticalCardSwiper

A marriage between the Shazam Discover UI and Tinder, built with UICollectionView in Swift.


Control / Button

A control that executes your custom code in response to user interactions.

DOFavoriteButton

Cute Animated Button written in Swift. It could be just right for favorite buttons.

TVButton

Recreating the cool parallax icons from Apple TV as iOS UIButton in Swift.

TransitionButton

UIButton sublass for loading and transition animation.

WCLShineButton

This is a UI lib for iOS. Effects like shining.

ButtonProgressBar-iOS

A small and flexible (well documented) UIButton subclass with animated loading progress, and completion animation.

LiquidFloatingActionButton

Material Design Floating Action Button in liquid state.

Loady

This is a small library to show loading and indicator in UIButton, with fully customizable styles. there are 6 different styles, you can set the colors from interface builder or programmatically.

CocoaButton

Interactive UIButton with loading capability.

QBIndicatorButton

Simple way to display activity indicator inside the button.


Control / Segment Control

A control that consists of multiple segments, each segment functioning as a discrete button.

TKRubberIndicator

A rubber animation page control.

PinterestSegment

A Pinterest-like segment control with masking animation.

TwicketSegmentedControl

Custom UISegmentedControl replacement for iOS, written in Swift.

SJFluidSegmentedControl

A segmented control with custom appearance and interactive animations. Written in Swift 3.0.

JXSegmentedView

A powerful and easy to use segmented view: segmentedcontrol, pagingview, pagerview, pagecontrol, categoryview.


Control / Slider

A control for selecting a single value from a continuous range of values.

HGCircularSlider

A custom reusable circular / progress slider control for iOS application.

AGCircularPicker

Helpful component for creating a controller aimed to manage any calculated parameter.

Fluid Slider

A slider widget with a popup bubble displaying the precise value selected. Swift UI library.

balloon-picker

Custom picker view with floating balloon animation.

GMStepper

A stepper with a sliding label in the middle.

GaugeSlider

Highly customizable GaugeSlider designed for a Smart Home app. Featured at Medium.

STDiscreteSlider

Slider which allows user to choose value only from predefined set of data.


Control / Switch

A control that offers a binary choice, such as on/off.

TKSwitcherCollection

An animation switch collection.

RAMPaperSwitch

Swift material design UI module which paints over the parent view when the switch is turned on. iOS library.

AIFlatSwitch

Nicely animated flat design switch alternative to UISwitch.

MJMaterialSwitch

A Customizable Switch UI for iOS, Inspired from Google's Material Design in Swift.


Control / Text Field

An object that displays an editable text area in your interface.

Reel Search

UI controller that allows you to choose options from a list. Swift UI library.

SkyFloatingLabelTextField

A beautiful and flexible text field control implementation of Float Label Pattern. Written in Swift.

TextFieldEffects

Custom UITextFields effects inspired by Codrops, built using Swift.

SearchTextField

UITextField subclass with autocompletion suggestions list.

AnimatedTextInput

Animated UITextField and UITextView replacement for iOS.

CocoaTextField

Apple UITextField created according to the Material.IO guidelines of 2019. Featured at Medium.


Control / Text View

A scrollable, multiline text region.

RSKGrowingTextView

A light-weight UITextView subclass that automatically grows and shrinks.

SelectableTextView

A text view that supports selection and expansion.

STTextView

Light-weight library that adds a placeholder to the UITextView.


Collection View

An object that manages an ordered collection of data items and presents them using customizable layouts.

expanding-collection

ExpandingCollection is an animated material design UI card peek/pop controller. iOS library.

gliding-collection

Gliding Collection is a smooth, flowing, customizable decision for a UICollectionView Swift Controller. iOS library.

cardslider

Cardslider is a design UI controller that allows you to swipe through cards with pictures and accompanying descriptions.


Collection View / Layout

An object that manages an ordered collection of data items and presents them using customizable layouts.

AnimatedCollectionViewLayout

A UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView without effecting your existing code.

CollectionViewSlantedLayout

A CollectionView Layout displaying a slanted cells.

BouncyLayout

BouncyLayout is a collection view layout that makes your cells bounce

SFFocusViewLayout

UICollectionViewLayout with focused content.

CarLensCollectionViewLayout

An easy-to-use Collection View Layout for card-like animation.

IBPCollectionViewCompositionalLayout

Backport of UICollectionViewCompositionalLayout to earlier iOS 12.


Controller

An object that manages a view hierarchy for your UIKit app.

liquid-swipe

Transition simulates liquid when swipe to the side

FloatingPanel

A clean and easy-to-use floating panel UI component for iOS.

SPLarkController

Settings screen with buttons and switches

SPPermissions

Ask permissions on Swift. Available List, Dialog & Native interface. Can check state permission.

SPStorkController

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

paper-onboarding

PaperOnboarding is a material design UI slider. Swift UI library.

preview-transition

SPreviewTransition is a simple preview gallery UI controller with animated tranisitions. Swift UI library.

folding-cell

FoldingCell is an expanding content cell inspired by folding paper material


Controller / Messages

Replicate messages controller with message views.

MessageKit

A community-driven replacement for JSQMessagesViewController.

MessageViewController

A SlackTextViewController replacement written in Swift for the iPhone X.

MessengerKit

A UI framework for building messenger interfaces on iOS.


Label

A view that displays one or more lines of informational text.

LTMorphingLabel

Graceful morphing effects for UILabel written in Swift.

GlitchLabel

Glitching UILabel for iOS.

CountdownLabel

Simple countdown UILabel with morphing animation, and some useful function.

MarqueeLabel

A drop-in replacement for UILabel, which automatically adds a scrolling marquee effect when the label's text does not fit inside the specified frame.

CoreML-in-ARKit

Simple project to detect objects and display 3D labels above them in AR. This serves as a basic Template for an ARKit project to use CoreML.

NumberMorphView

A label view for displaying numbers which can transition or animate using a technique called number tweening or number morphing.

ActiveLabel.swift

UILabel drop-in replacement supporting Hashtags.


Menu

List of menus.

GuillotineMenu

Our Guillotine Menu Transitioning Animation implemented in Swift reminds a bit of a notorious killing machine

circle-menu

CircleMenu is a simple, elegant UI menu with a circular layout and material design animations. Swift UI library.

AirBar

UIScrollView driven expandable menu.

SPLarkController

Custom transition between controllers. Settings controller for your iOS app.

PopMenu

A fully customizable popup style menu for iOS.

ContextMenu

An iOS context menu UI inspired by Things 3.

Menu

The iOS Menu.

Segmentio

Animated top/bottom segmented control written in Swift.

Persei

Animated top menu for UITableView, UICollectionView, UIScrollView written in Swift

BTNavigationDropdownMenu

The elegant yet functional dropdown menu, written in Swift, appears underneath the navigation bar to display a list of defined items when a user clicks on the navigation title.

FlowingMenu

Interactive view transition to display menus with flowing and bouncing effects in Swift.

fan-menu

Menu with a circular layout based on Macaw.

GooeyTabbar

A gooey effect tabbar.

SideMenu

Simple side/slide menu control for iOS, no code necessary! Lots of customization. Add it to your project in 5 minutes or less.


Progress Indicator

A view that depicts the progress of a task over time.

KDCircularProgress

A circular progress view with gradients written in Swift.

FillableLoaders

Completely customizable progress based loaders drawn using custom CGPaths written in Swift.

MKRingProgressView

Ring progress view similar to Activity app on Apple Watch.


Tab Bar

A control that displays one or more buttons in a tab bar for selecting between different subtasks, views, or modes in an app.

animated-tab-bar

RAMAnimatedTabBarController is a Swift UI module library for adding animation to iOS tabbar items and icons. iOS library.

CircleBar

A fun, easy-to-use tab bar navigation controller for iOS.

Segmentio

Animated top/bottom segmented control written in Swift.

adaptive-tab-bar

AdaptiveController is a 'Progressive Reduction' Swift UI module for adding custom states to Native or Custom iOS UI elements. Swift UI component.

ColorMatchTabs

This is a Review posting app that let user find interesting places near them.

XLPagerTabStrip

Android PagerTabStrip for iOS.

Tabman

A powerful paging view controller with interactive indicator bars.

SwipeableTabBarController

UITabBarController with swipe interaction between its tabs.


Table View

A view that presents data using rows in a single column.

paper-onboarding

PaperOnboarding is a material design UI slider. Swift UI library.

folding-cell

FoldingCell is an expanding content cell inspired by folding paper material

MYTableViewIndex

A pixel perfect replacement for UITableView section index, written in Swift.

SwipeCellKit

Swipeable UITableViewCell and UICollectionViewCell based on the stock Mail.app, implemented in Swift.

RHPreviewCell

I envied so much Spotify iOS app this great playlist preview cell, I decided to create my own one. Now you can give your users ability to quick check "what content is hidden under your UITableViewCell". Great think is that this Library not requires 3D Touch support from user device

HGPlaceholders

Nice library to show placeholders and Empty States for any UITableView or UICollectionView in your project.