Learn how to use the Flutter TabBar widget to take the user through a sequence of pages, and disable user interaction on the tabs themselves. https://codewithandrea.com/articles/flutter-tab-bar-navigation/
TextField validation is a common problem that can be solved in multiple ways. Here's an interesting approach based on TextEditingController and ValueListenableBuilder. https://codewithandrea.com/articles/flutter-text-field-form-validation/
How to create a reusable widget class that helps us when working with asynchronous data from Riverpod providers. https://codewithandrea.com/articles/async-value-widget-riverpod/
Validating TextField data on the fly can be done in multiple ways. Here's a simple and elegant approach to reduce boilerplate code. https://codewithandrea.com/articles/flutter-text-field-validation-animated-builder/
A simple and elegant approach to build a Chat Messaging UI with DecoratedBox, Align, and Padding widgets in Flutter. https://codewithandrea.com/articles/chat-messaging-ui-flutter/
In Flutter you can use DecoratedBox to set a lot of decoration/styling options to your widgets. Here's how. https://codewithandrea.com/tips/rounded-border-widget-flutter/
The faker package lets you generate addresses, names, food, dates, sports... you name it! Here's how to use it. https://codewithandrea.com/tips/faker-package/
How to style an ElevatedButton in Flutter, including reusing the same style across all buttons with ThemeData. https://codewithandrea.com/tips/elevated-button-style-flutter/
How to animate a custom task completion ring using AnimationController and AnimatedBuilder in Flutter. https://codewithandrea.com/articles/flutter-animation-controller-animated-builder/
CustomPainter is often the way to go when we need to draw some custom shapes in Flutter. Let's see how to use it in practice. https://codewithandrea.com/articles/flutter-drawing-with-custom-painter/