A beginner’s guide to animations in Flutter

Animations are a powerful way to enrich your Flutter design. It can transform a static experience into an interactive one by adding motion and giving the user feedback about what’s happening on the screen. A Beginner’s Guide to Animations in Flutter, will teach you all you need to know about animations in Flutter. It covers basic concepts like AnimationBuilder, CurvedAnimation, Tween Animation, and more! If you want to learn how to use animations in Flutter, then keep reading!

Related guide: How To Implement Onboarding Screen PageView In Flutter

What Are Animations in Flutter?

Animations are a way to introduce movement and interactivity to your app. When something changes on the screen, an animation can help make that change feel more natural.

Basic Concepts

  • AnimationBuilder
  • CurvedAnimation
  • TweenedAnimation


AnimationBuilder is a type of animation you can use in Flutter. It’s a wrapper around the Animated class, and it provides a fluent API for creating animations.

An AnimationBuilder can be created by passing in an animated value, such as an Int or Float, to the constructor. Once created, you can specify different values for properties like duration or easing to create various effects. You can also combine multiple animations together using the builder’s “set” method. Here’s an example:

// Create a new builder
var anim = AnimationBuilder(duration: Duration(seconds: 2));

// Build an animation that changes color over time

// Build an animation that moves from left to right
anim.moveBy(-200, duration: Duration(seconds: 2), curve: CurvedAnimation.fastOutSlowIn);


CurvedAnimation is a type of Animation that creates a motion curve with an ease-in and ease-out effect. A CurvedAnimation requires two values: the start value and the end value. The start value is how far along in the animation you want to start (0% or 100%). The end value is how far along in the animation you want to end (0% or 100%). This can be done by passing either a range, like 0-100, or specific values, like 30-70.

Tween Animation

TweenedAnimation is an Animation that smoothly interpolates between two states, over a specified duration. A TweenedAnimation can also be reversed if necessary.

TweenedAnimation ids are created with three parameters: the animation builder, the CurvedAnimation ids for the start and end point of the tween, and an optional duration.

When executing a TweenedAnimation at any time t, you can think of it as interpolating to ÂAnimations Âw(t) and f(t) (where w(0) = f (0)) over time by using equations:

*For interpolating w to f:

*For reversing an animation:

Read more on Tween Animation in Flutter.


Animations are a great way to add motion to your app. They are easy to use and can be as simple as a FadeTransition, or as complex as a CurvedAnimation.

This Beginner’s guide helped you learn the basics of animations and how to use AnimationBuilder and Tween Animation. You also learned how to use CurvedAnimation. Also read on Flutter Guide: Lottie Animations in Flutter