IBAnimatable /IBAnimatable

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

★ 8,636⑂ 773
SwiftCreated 2015-11-17
8,636
stars
+2+2+1
773
forks
–
watchers
–
prs
–
issues
–
releases
–
discussions

README

!IBAnimatable

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

!IBAnimatable hero image








The app was made in Interface Builder with IBAnimatable without a single line of code. Due to the size of the GIF file on Dribbble, it only demonstrates a subset of features. We can also find the full HD version on YouTube or MP4 on Github

 Key features
- ✅ 100% compatible with UIKit. All IBAnimatable APIs are extensions of UIKit. No pollutions to UIKit's APIs.
- ✅ 100% compatible with Auto Layout and Size Classes. No custom layout system.
- ✅ User interface design and preview in IB: corner radius, border, mask, shadow, gradient colors, tint color, blur effect etc.
- ✅ Animation design in IB: slide in/out, fade in/out, zoom in/out, flip, pop, shake, rotate, move etc.
- ✅ Transition design in IB: fade, slide, flip, cube, portal, fold, explosion etc.
- ✅ Interactive gesture design in IB: pan, screen edge pan, pinch etc. 
- ✅ Presentation design in IB: flip, cover, zoom, dropdown etc.
- ✅ Activity indicator design in IB: ball beat, ball rotate, cube transition, Pacman etc.  


!StoryboardPreview

Here is the full design in a Storyboard in Interface Builder.

With IBAnimatable, we can design a UI in Interface Builder like what we can do in Sketch, and prototype animations in a Swift playground like what we can do in Framer. Also, we can use the output of the design directly in the production ready App.

As a designer, we love Sketch, which is a simple but yet super powerful tool to create UI. However, Sketch can't design interaction, navigation, transition and animation, and we may need another tool like Framer to design some of them. Moreover, to make an App Store ready App, we need to use Xcode and Interface Builder to implement the UI and animations. To speed up the process and minimize the waste, we create IBAnimatable to make Interface Builder designable and animatable.   

 How to install
 Manually install

Copy and paste IBAnimatable folder in your Xcode project.

 Swift package manager
To integrate using Apple's Swift package manager, add the following as a dependency to your Package.swift:

swift
.package(url: "https://github.com/IBAnimatable/IBAnimatable.git", .upToNextMajor(from: "6.1.0"))


 CocoaPods
Add the following entry in your Podfile:

ruby
   pod 'IBAnimatable'


 Carthage
Add the following entry in your Cartfile:


   github "IBAnimatable/IBAnimatable"


 Accio
Add the following entry in your Package.swift:

swift
.package(url: "https://github.com/IBAnimatable/IBAnimatable.git", .upToNextMajor(from: "6.1.0")),


Next, add IBAnimatable to your App targets dependencies like so:

swift
.target(
    name: "App",
    dependencies: [
        "IBAnimatable",
    ]
),


Please Notice, there is a limitation of a built framework for @IBDesignable and @IBInspectable, that will impact on IBAnimatable when you use Carthage or Accio. There is a w

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON