Animations

Mastering transitions and easing in Framer (Animation Lesson 3)

Mastering transitions and easing in Framer (Animation Lesson 3)

Mastering transitions and easing in Framer (Animation Lesson 3)

Joseph

·

11:01

·

20K views

·

About this lesson

A good animation isn’t just about making things move — it’s about how they move. Transitions in Framer let us control duration, easing, and even emulate real-world physics using springs. In this lesson, we’ll explore how to craft transitions that feel smooth, intentional, and expressive — whether you're fine-tuning a micro-interaction or choreographing an entire hero section.

Grab the remix link here: https://www.framer.com/academy/lessons/framer-animations-transitions-and-easing

https://www.youtube.com/watch?v=bOgUXDibygM&t=0s Intro

https://www.youtube.com/watch?v=bOgUXDibygM&t=7s What are transitions?

https://www.youtube.com/watch?v=bOgUXDibygM&t=21s Setting duration

https://www.youtube.com/watch?v=bOgUXDibygM&t=38s Choosing an ease curve

https://www.youtube.com/watch?v=bOgUXDibygM&t=62s Previewing transitions

https://www.youtube.com/watch?v=bOgUXDibygM&t=76s Using presets for consistency

https://www.youtube.com/watch?v=bOgUXDibygM&t=97s Understanding “smart animate”

https://www.youtube.com/watch?v=bOgUXDibygM&t=123s Using transition effects on components

https://www.youtube.com/watch?v=bOgUXDibygM&t=150s Nesting transitions

https://www.youtube.com/watch?v=bOgUXDibygM&t=181s Avoiding common transition mistakes

https://www.youtube.com/watch?v=bOgUXDibygM&t=227s Examples of good transitions

https://www.youtube.com/watch?v=bOgUXDibygM&t=265s Scroll-based transitions

https://www.youtube.com/watch?v=bOgUXDibygM&t=312s Best practices for responsive motion

https://www.youtube.com/watch?v=bOgUXDibygM&t=360s Performance considerations

https://www.youtube.com/watch?v=bOgUXDibygM&t=430s Recap and wrap-up

https://www.youtube.com/watch?v=bOgUXDibygM&t=590s Final thoughts

Sign up: https://framer.link/yt

Follow: https://framer.link/yt-x

Learn: https://framer.link/yt-academy

0:00A good animation isn't just about making0:02things move. It's about how they move.0:05Transitions in Framer let us control0:07duration, easing, and even emulate0:09realworld physics using springs. In this0:13lesson, we'll explore how to craft0:14transitions that feel smooth,0:16intentional, and expressive. Whether0:18you're fine-tuning a micro interaction0:20or choreographing an entire hero0:22section,0:26again, for this one, we're going to hop0:28into a project file. And this is0:29actually the same project file as the0:31previous lesson. So if you remix that0:33one already, just head to the second0:35page here called easing, and you'll find0:37exactly what I'm looking at here on my0:39screen. What we'll start with is down0:42here. We're going to compare some of the0:44different easing curves that we have to0:46work with. And easing is really all0:48about creating motion that feels0:51natural, that feels right. And linear is0:54one of those curves that just feels0:56robotic. So what I'm going to do, I'm0:57going to go into preview mode. So, we0:59can look at all of these at the same1:00time and compare them. And you'll find1:02that this linear motion is1:05instantaneously reaching its maximum1:07speed. It's going the same speed the1:09entire way, and it's also1:11instantaneously stopping when it reaches1:14the other end, which is very robotic.1:16This works well for animations that sort1:19of whiz by, but not necessarily1:21animations that start on the screen or1:24end on the screen where you can see the1:26object begin to move or you can see the1:28object come to rest. Those situations1:32lend themselves better to easing in or1:34easing out, which we'll talk more about1:36in a moment. In fact, the next one down1:38that you see on my screen is ease in1:40out, which means ease in and out. Ease1:43in at the beginning, ease out at the1:45end. And what you're seeing here is sort1:48of a gradual acceleration at the1:49beginning and then we reach sort of the1:51peak velocity in the middle here and1:54then a gradual deceleration at the end1:57where it comes to rest kind of naturally1:58kind of like a ball. You roll a ball by2:01transferring energy into it which has to2:03happen gradually even if it seems2:05instantaneous like a baseball bat2:07hitting a baseball but let's talk more2:08like a gentle roll of a ball. We slowly2:11transfer energy into it. that energy2:13eventually gets scrubbed off and the2:16ball comes to rest. So most objects in2:18the physical world have a period of time2:20where energy is transferred into them2:23and then a period of time where energy2:24is lost. So ease in and out shows that2:27happening on both ends. Whereas ease in2:30you see the energy being transferred2:32into the object. It sort of eases into2:34that movement and it reaches its peak2:36velocity at the very end and then stops2:39instantaneously. So ease in is best when2:42you don't see the end of the animation.2:44You only see the beginning of the2:45animation. So that way you see the2:47gradual start. You see that kinetic2:49energy being transferred in and then2:51that instantaneous stop hopefully2:52happens offcreen so you don't see it2:55just come to an abrupt halt. Ease out on2:58the other hand does just the opposite.3:00It starts at peak velocity and then at3:02the end it comes to rest gradually. So3:06again, like a ball rolling into view, it3:08would slow down gradually and eventually3:10come to rest. So much like ease in, but3:12the opposite. You'd probably want to see3:14this object come to rest at the end, but3:17you wouldn't want to see it3:18instantaneously accelerate to full3:20speed. So hopefully these objects start3:23off the screen and end on the screen.3:26And then last but not least, we have3:28spring. And spring is really cool in3:30framework because we actually have two3:31different ways of approaching how we get3:33this spring animation, this sort of3:36spring energy to an object. We can3:38either set it based on the time and just3:40say we want it to be a certain amount of3:42bouncy or we can start with the physics3:44and then the time is determined by the3:47physics that we choose for our3:48transition. So we'll talk about that3:50more in a moment here. You can see that3:52the gist of this is that at the very end3:55here we see the energy sort of3:58overshoot. We see that this goes past4:00the end point here. So if we had this4:03transitioning a value of let's say a,0004:06pixels, it's actually moving further4:07than a,000 pixels and then it's4:10gradually coming back. Sort of like a4:12spring that has the freedom to overshoot4:14and then eventually come to rest with4:17sort of a little wobble to it. So now4:19let's look at how these different easing4:21methods pair with some of those contexts4:23that I mentioned a moment ago. Things4:25coming on the screen, things going off4:27the screen, things going across the4:29screen, starting and ending off the4:31screen. And that's just below here. So4:33we'll go down to examples. And you can4:35see here that that linear easing makes a4:38whole lot of sense for something that4:40starts off screen and continues and goes4:42off screen. Almost like a ticker. You4:44don't see how it got rolling. you don't4:46see where it ends. It just sort of4:49continues along doing its thing. It's4:51also good for rotation that just4:53continues on and on. You know, perpetual4:55motion type of things. And then here we4:57have ease in and ease out where the4:59object starts on the screen and ends on5:02the screen. So, we see it get going, we5:04see it come to rest. Therefore, we ease5:07it in and we ease it out. And then5:09below, if we only see it coming to rest,5:12we can ease that energy out. And if we5:14only see it get going and we don't see5:16it come to rest, then we can ease that5:18energy in. There's really no reason to5:20ease both if we don't see both. So by5:24using ease out or ease in, we can5:25dedicate more of the duration to that5:28ramp up or that ramp down rather than5:31using half of the duration to ramp up5:33and then half of the duration to ramp5:35down after the layer is already gone. So5:37now let's look at how these things5:38actually manifest themselves as settings5:41in Framer. If you watched the previous5:43lesson, then you saw that we added a5:44hover effect to one layer and we added a5:46press effect to another layer. So, I'm5:48actually going to go back to the5:49homepage, which is where we did just5:51that. And we'll play with the easing and5:53duration for those very effects. So,5:55again, I'm going to come over here to5:56the effect itself. And at the bottom,5:59transition is where we make these6:01decisions for our easing and for our6:03duration. Right now, this is set to6:05spring, but I'm going to switch back to6:07ease because most of the easing curves6:09that we talked about a moment ago are6:11found on the ease tab. And you can work6:13with presets from this drop- down menu6:15here, like linear, which we talked6:16about, ease in, ease in and out, ease6:19out, or do a little bit of overshoot.6:22But I want to show you how the graph6:24editor here works. So, I'm going to6:25start with the ease in and out preset.6:27But the graph editor just above lets us6:30customize that. So if we want a little6:32more easing on the end or we want a6:34little more easing at the beginning or6:36we want all the easing to happen more6:38gradually and for the middle section to6:39happen more quickly, we can do all that6:41here on the graph editor. So I can just6:43click and drag these bezier handles and6:46sort of determine how the speed is going6:48to ramp up at the beginning and how the6:50speed is going to ramp out at the end.6:53And wherever we drag these blue handles6:54to, the coordinates of those positions6:57are shown down here in the bezier field.7:01So if I did something very specific7:03here, and I was really happy with it, I7:06could take this and copy and paste it7:07into the easing for other layers to make7:09sure that I'm being totally consistent7:11here. So the first two numbers are7:12really just an XY position for the first7:14dot. And then the second two numbers are7:16the X and Y position of the second dot.7:19So if for example I wanted this dot to7:21be at the very bottom and halfway across7:24that would be 0.5 to be halfway across7:27and that would be zero to be all the way7:30at the bottom. So you can manipulate7:31these numbers here directly if you7:33wanted to. And similarly I could say I7:35want the X position of the second handle7:38to be halfway across and I want it to be7:40all the way at the top which is going to7:42be one. And then the time will determine7:45how quickly this happens from beginning7:47to end. And down here, this preview7:49gives us a handy little visualization of7:52what that time, delay, and easing are7:55going to look like when it all comes7:56together. And if we didn't want the7:58transition to start immediately, we've8:00also got this little delay field here.8:02But before we wrap up, let's talk about8:04springs here for a moment. If we go to8:06the spring tab, we get two different8:08modes to create this spring animation.8:10One is time, which is sort of a8:12simplified mode that lets us say how8:15long we want this transition to take.8:17Let's say just an even 1 second. And you8:20can see here that from beginning to end,8:22the transition does take 1 second. But8:25then based on the bounce value, we could8:27determine just how bouncy and wiggly8:29this gets as it comes to rest. So with a8:32lower bounce value, this is going to8:34happen more gradually and less is going8:36to happen at the end. And with a higher8:38bounce value, it's going to happen more8:39quickly at the beginning so that it has8:41more time to get all that bouncing done8:44by the end of that 1 second duration. So8:47essentially with these timebased8:48springs, we're saying we don't want the8:50transition to take any longer than this.8:52Get all the bouncing done before we8:54reach that time limit. So the more8:56bouncy it is, the more quickly it's8:58going to appear to happen. And the less8:59bouncy it is, the less quickly it's9:01going to appear to happen, even if you9:03leave the time alone. So it's kind of a9:04balancing act between the time and the9:06bounciness. Physics, on the other hand,9:08lets us set stiffness, damping, and9:11mass, and then the amount of time that9:13takes is calculated based on those three9:15variables. So by messing with these, we9:17are effectively going to change the9:19amount of time that it takes. So if we9:22stiffen this up, things are going to9:23happen quicker, but as a result of9:25happening quicker, there's more energy.9:27So there's going to be a little bit more9:28bounciness. If we don't like how much9:31bounciness there is, we can add more9:33damping, and damping will sort of mute9:35that out. Kind of like a shock absorber.9:37So it's like we got a spring and a shock9:39absorber, like the suspension on a car.9:41If we reduce the damping, then the9:43spring is free to bounce and bounce and9:45bounce and bounce and sort of continue9:47until eventually coming to rest on its9:50own. And naturally, the more mass we9:52add, the more energy this is going to9:54carry. So again, it's going to get9:55moving a little bit slower, but then9:57it's going to carry more energy and it's9:59going to take longer for it to come to10:01rest. So again, we've got a balancing10:03act here. We've got to figure out how10:05fast do we want this to move. Larger,10:07heavier objects add mass. objects that10:10you don't want bouncing around for a10:12long long time, add damping and then use10:14stiffness to determine how explosive or10:17how gentle that motion is. But again,10:19the amount of total time that this10:21transition is going to take up is a10:23byproduct of how we balance all these10:25things. So now, if I go into preview10:28mode and we take a look at this, we've10:30got that gentle heavy bounce on hover.10:33And there you have it. From easing10:35presets to spring physics, transitions10:37help define your site's personality.10:39Mastering these tools means your10:41animations won't just move, they'll move10:43with purpose, elegance, and the10:45tangibility of the physical world.10:48That's it for this one. I'll see you in10:49the next one.

Watch on YouTube ↗

More in this topic

Framer Update: Logo Shaders2:05
Framer Update: Logo Shaders
Framer Update12K views · 1 month ago
Framer Update: Holo Shader1:46
Framer Update: Holo Shader
Framer Update6K views · 2 months ago
Shader: Chromatic Aberration1:56
Shader: Chromatic Aberration
Framer Update7K views · 2 months ago
Framer Shaders2:28
Framer Shaders
Announcement23K views · 2 months ago
Framer Update: Flow Effect in Layout Templates2:12
Framer Update: Flow Effect in Layout Templates
Framer Update10K views · 3 months ago
Building an Expanding Article Stack in Framer13:14
Building an Expanding Article Stack in Framer
Animations4K views · 4 months ago
Scaling a clipped image on hover in Framer5:41
Scaling a clipped image on hover in Framer
Animations7K views · 5 months ago
Making elements revolve in Framer3:38
Making elements revolve in Framer
Animations5K views · 5 months ago

Create a free website with Framer, the website builder loved by startups, designers and agencies.