
Pop: An extensible animation engine for iOS and OS X - jpdlla
https://github.com/facebook/pop
======
jerols
Pop doesn't have any example code yet so I created a video tutorial to help
folks get started (with source code): [http://tapity.com/tutorial-getting-
started-with-pop/](http://tapity.com/tutorial-getting-started-with-pop/)

~~~
hjaltij
The video tutorial is nice but I fail to see how it's any easier to do with
pop than just with CA. (I've been a Obj-C/Cocoa dev for 8 years)

~~~
jerols
It isn't much better for simple animations like this but I find it much easier
for complex, gesture-based, dynamic animations that can change at any time
based on user input.

~~~
msprague
Also a designer can tell a dev exactly what he/she wants in terms of animation
values (assuming they're using origami)

~~~
286c8cb04bda
_> Also a designer can tell a dev exactly what he/she wants in terms of
animation values (assuming they're using origami)_

Thank you for introducing me to Origami! My time on HN today was not wasted.

(It's at
[https://facebook.github.io/origami/](https://facebook.github.io/origami/) if
somebody else reading this also did not know about it.)

------
jamesgpearce
Also there's a blog post with more details of the library at
[https://code.facebook.com/posts/234067533455773/introducing-...](https://code.facebook.com/posts/234067533455773/introducing-
pop-the-animation-engine-behind-paper/)

------
jaegerpicker
I'm missing the benefit of this over iOS 7's Core animation. I guess support
for earlier os versions is the big advantage but for me all my new work is on
iOS 7+ only apps and I'm not sure this helps a ton for that.

~~~
conradev
The key difference as highlighted in the video introduction is that Pop
animates arbitrary properties on the model layer, allowing for easily
cancelable and continuous animation. This approach is contrary to the Core
Animation's transactional model, animating only the presentation layer.

If you are referring to the UIKit keyframe animation API that was added in iOS
7, that API has existed for some time at the Core Animation level. Keyframes
are difficult to get right, and don't model physical systems like springs very
well.

------
seivan
[https://github.com/seivan/TransitionControllerWithPop](https://github.com/seivan/TransitionControllerWithPop)

So I tried with a custom transitionController and it doesn't play along nicely
without using CADisplayLink.

It's the same concept as CAAnimation, you need to manually step through the
animation.

It's not bad per say, if you need to morph some layers or animate stuff like
shadows or anything that doesn't work out of the box with [UIView
animate:....]

------
aabalkan
This is the core animations and interactions library used in Paper app for
iOS. I am looking forward to see some examples and tutorials on this, because
for someone like me with no experience on UIAnimation, I guess it is something
fairly easy to use when there are samples out there.

~~~
gregbarbosa
Agreed. I'm going to play around and see what I can learn from it, but a small
tutorial would help me get jump started as well. Whether it be the coding
aspect, or just ideas on how to implement different animations.

------
barbs
What are the chances that there will be something similar for Android?

~~~
wsbail29
We open sourced Rebound for Android a few months ago. It provides simple
spring dynamics similar to Pop and is used to drive animations in Facebook
apps like Chat Heads and FB Home.

[http://facebook.github.io/rebound](http://facebook.github.io/rebound)

[http://github.com/facebook/rebound](http://github.com/facebook/rebound)

twitter: @rebound_lib

------
mikro
I've been waiting for this ever since reading [http://tapity.com/thank-you-
facebook/](http://tapity.com/thank-you-facebook/) Hooray!

------
badhairday
Awesome! I've been waiting for them to put this up.

