anim
Swift animation library for iOS, tvOS and macOS.
anim is an animation library written in Swift with a simple, declarative API in mind.
It supports a bunch of easing functions and chaining multiple animations. It's a wrapper on Apple's UIViewPropertyAnimator
on its core, and falls back to UIView.animate
on versions before iOS and tvOS 10.
It uses NSAnimationContext
on macOS.
Examples
Example projects are available at examples/
folder and as targets on XCode project.





Cocoapods
Carthage
Manually
Or simply drag the swift files inside src/
folder into your project.

For complete documentation, visit http://onurersel.github.io/anim/.
Initialize animations with anim
constructor.
Chain animations with then
function.
Wait between animation steps with wait
function.
Insert callbacks between animation steps with .callback
function.
Stop animations with stop
function.
Default settings
You can change default animation settings through anim.defaultSettings
property.
Easing
anim.Ease
exposes a bunch of easing options.

- [x] Chaining animations
- [x] Wait, callback functions
- [x] Constraint animations
- [x] iOS 8 and 9 support
- [x] macOS support
- [x] tvOS support
- [x] Example projects
- [ ] API for choreographing animations
- [ ] Grouping animations
- [ ] Easing with spring
- [ ] Shape animations