Build a Flutter Stopwatch App with Custom UI and Animations

Learn how to use Flutter tickers, matrix transforms, and other custom widgets to build a clone of the iOS Stopwatch app

Want to learn how to build completely custom and performant UIs in Flutter?

What you’ll learn

  • Learn about how to create performant Flutter UIs that update every frame at 60 fps.
  • Work with custom Flutter layout widgets: Stack, Align, Positioned, AspectRatio, LayoutBuilder, Transform.
  • Work with matrix transforms (scale, rotate, translate) to create custom Flutter UIs.
  • Build a clone of the iOS stopwatch app.

Course Content

  • Flutter Stopwatch App Challenge –> 16 lectures • 1hr 10min.

Auto Draft


Want to learn how to build completely custom and performant UIs in Flutter?

This practical course will teach you exactly that, by showing you how to create a clone of the iOS stopwatch app from scratch.

As part of this, you’ll learn about the foundations of the Flutter animation framework and build a completely custom UI using:

  • Ticker and TickerProvider
  • Matrix Transforms
  • Stack, LayoutBuilder, AspectRatio, and other layout widgets

Would you like to:

  • build UIs that render every frame, in sync with the screen refresh rate, and without compromising performance?
  • rotate, scale, or translate widgets, and combine them all together to build custom UIs?

Then you’ve come to the right place.

This course is short and to the point. But it will give you valuable knowledge and a few tricks that will come handy in your future Flutter projects.

What does the completed project look like?

Go check the video preview for a complete overview of the project you’ll build in this course.

Other things included in the course:

– How to switch betwen light and dark mode

– How to manage the stopwatch state and start, stop, and reset the timer

– How to optimize the application performance

– How to build modular code by creating small, reusable widgets

– A final challenge to test your knowledge


Frequently Asked Questions

Will we use Flutter 2?
Yes! The entire course uses Flutter 2 with Null Safety and I will keep it up to date.

What are the course prerequisites?
You should be already familiar with StatelessWidgets and StatefulWidgets, common layouts (Row, Column, Stack), and the foundations of state management in Flutter.

Get Tutorial