Habit Tracker App: Introduction


From this point onwards, we will build a habit-tracking app, which is the main project of this course.

Here's a roadmap:

Animated Task Completion Ring

  • Custom painters
  • Explicit animations with AnimationController & AnimationBuilder
  • GestureDetector
  • Arranging items inside a GridView

Local data persistence with Hive

  • Store tasks with their state on local storage

State Management with Riverpod

  • We'll use Riverpod for State Management and Dependency Injection

Interactive page flip

  • Diving deeper into explicit animations with AnimationController, 3D Matrix transforms and custom interactive transitions using gesture detectors.

Slide-in/out animations

  • How to implement a bottom panel that slides in and out when we click on the settings gear.
  • Learn how a single AnimationController can drive the animation of multiple widgets on screen.
  • Staggered animations

Advanced theming

  • Completely customise the color palette
  • Implement multiple themes with different colors & variants
  • Save theme preferences to local storage
  • Animated theme changes with ImplicitlyAnimatedWidget

Add and edit tasks

  • Additional UI and functionality to add and edit tasks: choose a task name and a custom icon.

Additional notes

The project was inspired by the Streaks app, one of the top Health & Fitness apps in the App Store.

Each section will include:

  • Starter Project
  • Technical Planning
  • Implementation

Some challenges will also be included.

Complete and Continue