A powerful animation framework for iOS, tvOS, and OS X.


What is it?

Advance is a pure Swift framework that enables advanced animations and physics-based interactions.

Originally developed to power the animations throughout the Storehouse app for iOS, Advance has evolved into a composable set of tools with a simple API. It uses a CADisplayLink instance to drive animations and simulations that advance on each frame.

Should I use it?

Advance shines when:

You are building gesture-based interactions that use physics to reflect the behavior of the real world.
You need to animate custom types with per-frame callbacks.
???. Advance is extensible, making it easy to build custom animation and simulation types.
You can accomplish amazing things with Advance. But you should be sensitive to the performance impact of performing per-frame animations on the main thread. Check out this article on for a good overview.

If you simply want to animate the basic properties of a view, it's probably best to stick with UIView animations / Core Animation. It is able to run your animations on a high priority background thread and is not as sensitive to blocking the main thread.


iOS 8+, tvOS 9+, or OS X 10.10+
Swift 2.2+