Black Friday Sale

Flutter Foundations Course

Buy now and get 33% off the regular price!

View Course

Flutter Videos

All the Flutter video tutorials from my YouTube channel.

Flutter Videos
Flutter Web vs HTML, CSS & JS: Performance Comparison

Flutter Web vs HTML, CSS & JS: Performance Comparison

#dart
#flutter
#flutter-web

And in-depth performance comparison of my new home page, built with Flutter web vs standard web technologies. All benchmarks were run with Google PageSpeed Insights and WebPageTest.org.

Apple Sign In with Flutter & Firebase Authentication

Apple Sign In with Flutter & Firebase Authentication

#flutter
#firebase
#authentication

How to implement Apple Sign In with Flutter & Firebase Authentication (from scratch), and give your iOS users a convenient way of signing into your app.

Flutter State Management Basics and Useful Resources

Flutter State Management Basics and Useful Resources

#dart
#flutter
#state-management

An overview of Flutter's built-in widgets for managing state, along with links to the best resources from the official Flutter documentation.

Starter Architecture for Flutter & Firebase Apps using Riverpod

Starter Architecture for Flutter & Firebase Apps using Riverpod

#flutter
#dart
#firebase
#app-architecture
#riverpod
#design-patterns

A detailed overview of a production-ready architecture that I've fine-tuned over the last two years. You can use the included starter project as the foundation for your Flutter & Firebase apps.

Learn Flutter Animations by Example + Free Gallery App on GitHub

Learn Flutter Animations by Example + Free Gallery App on GitHub

#dart
#flutter
#animations

Learn how to use the most common Flutter animation APIs with examples and a free gallery app on GitHub.

How to build any kind of app in Flutter (and overcome Tutorial Hell)

How to build any kind of app in Flutter (and overcome Tutorial Hell)

#flutter
#career
#productivity

Tips for learning how to build your own Flutter apps, overcome Tutorial Hell, and figure out what to do when you get stuck.

Dart Null Safety: The Ultimate Guide to Non-Nullable Types

Dart Null Safety: The Ultimate Guide to Non-Nullable Types

#dart
#null-safety

A complete tour of Null Safety & non-nullable types, the syntax changes they introduce in Dart 2.12, and how to use them in practice.

Colors / Numbers Game with Flutter Implicit Animations

Colors / Numbers Game with Flutter Implicit Animations

#dart
#flutter
#animations

How to use animations in Flutter to spice up a fun game written in Dartpad. Learn about implicit animations, AnimatedAlign, duration and curves.

How to reduce AnimationController boilerplate code: Flutter Hooks vs extending the State class

How to reduce AnimationController boilerplate code: Flutter Hooks vs extending the State class

#dart
#flutter
#animations

How to use Flutter Hooks or State subclassing to reduce your AnimationController boilerplate code.

Flutter Animations: Interactive Page Flip Widget [Part 2]

Flutter Animations: Interactive Page Flip Widget [Part 2]

#dart
#flutter
#animations

How to build an interactive page flip widget using Flutter's AnimationController, AnimationBuilder, gesture detectors and custom 3D matrix transforms (part 2).

Flutter Animations: Interactive Page Flip Widget

Flutter Animations: Interactive Page Flip Widget

#dart
#flutter
#animations

How to build an interactive page flip widget using Flutter's AnimationController, AnimationBuilder, gesture detectors and custom 3D matrix transforms (part 1).

Flutter State Management: Going from setState to Freezed & StateNotifier with Provider

Flutter State Management: Going from setState to Freezed & StateNotifier with Provider

#dart
#flutter
#state-management
#provider
#freezed

Mixing UI and logic inside Flutter widgets is bad. Here's how to refactor a simple app for better separation of concerns, immutability, and type safety using Freezed & State Notifier.

My 2020 Christmas Gift: Free Flutter Example Apps on GitHub

My 2020 Christmas Gift: Free Flutter Example Apps on GitHub

#dart
#flutter

I published a directory of all my open source Flutter apps and projects on GitHub. Here's where to find it.

Top 16 Dart Tips and Tricks Every Flutter Developer Should Know

Top 16 Dart Tips and Tricks Every Flutter Developer Should Know

#dart
#flutter

A curated list of useful Dart tips that will improve your coding style as a Flutter developer.

23 Top Tips to Become a Better Software Engineer

23 Top Tips to Become a Better Software Engineer

#career
#productivity

How to improve your coding skills and become a better software engineer.

How to Create Dart Packages for Your Flutter Apps

How to Create Dart Packages for Your Flutter Apps

#flutter
#dart

How to create your own Dart packages from existing apps, and other things you need to know.

Top 8 Pro Tips for Flutter Web Apps using Firebase

Top 8 Pro Tips for Flutter Web Apps using Firebase

#flutter
#flutter-web
#dart
#firebase

8 top tips that will save you time in your Flutter web projects.

RxDart by example: querying the GitHub Search API with switchMap & debounce

RxDart by example: querying the GitHub Search API with switchMap & debounce

#flutter
#dart
#rxdart
#search

Best practices for implementing search with RxDart in Flutter, using the GitHub Search REST API as an example.

RxDart by example: combineLatest and data modeling with Firestore

RxDart by example: combineLatest and data modeling with Firestore

#flutter
#dart
#rxdart
#firestore
#firebase

In-depth tutorial explaning combineLatest and data modeling with movie favourite example Flutter app.

Take Home Project for Flutter Job Interview - Firebase version

Take Home Project for Flutter Job Interview - Firebase version

#flutter
#dart
#firebase
#interview
#career

Take-home projects are a task often given to candidates during the interview process. This article shows a hypothetical assignment that I would give to candidates interviewing for a Flutter developer role.

Flutter Custom Painting: Do Not Fear The Canvas

Flutter Custom Painting: Do Not Fear The Canvas

#flutter
#dart
#canvas
#painting

This tutorial shows how to use Flutter custom painters to draw a happy face on screen with Dartpad, starting from scratch. Included: drawing custom shapes with Canvas and Paint, and layout considerations when using CustomPainter.

What's great about Flutter?

What's great about Flutter?

#flutter
#dart

Evaluating Flutter from various criteria: Portability, Language Tooling and Features, Documentation, Performance, Testing, Community, Package Ecosystem, Maintainer Commitment and many more.

Dart Extensions: Full Introduction and Practical Use Cases

Dart Extensions: Full Introduction and Practical Use Cases

#flutter
#dart
#extensions

Dart extensions unlock a few interesting use cases in Flutter apps. This tutorial shows how to enable them, what they are, when to use them, and when not to.

Flutter Slivers Overview: SliverList, SliverGrid, SliverToBoxAdapter, SliverFillRemaining

Flutter Slivers Overview: SliverList, SliverGrid, SliverToBoxAdapter, SliverFillRemaining

#flutter
#dart
#layouts

In-depth overview of Slivers and how to use them (part 2). Includes a demo app showing how to use SliverList, SliverGrid, SliverToBoxAdapter, SliverFillRemaining.

Flutter Slivers Overview: SliverAppBar, SliverPersistentHeader

Flutter Slivers Overview: SliverAppBar, SliverPersistentHeader

#flutter
#dart
#layouts

In-depth overview of Slivers and how to use them (part 1). Includes a demo app showing how to use SliverAppBar and SliverPersistentHeader.

Dart Features For Better Code: Spreads, Collection-If, Collection-For

Dart Features For Better Code: Spreads, Collection-If, Collection-For

#flutter
#dart

Overview of the 'Dart as UI' features introduced in Dart 2.3. Uses a fitness tracker custom UI as an example.

Dart Features for Better Code: Types and working with parameters

Dart Features for Better Code: Types and working with parameters

#flutter
#dart

Overview and practical use cases of type inference, final & const, named & positional parameters, @required & default values.

Flutter: Platform Aware Widgets and Dialogs

Flutter: Platform Aware Widgets and Dialogs

#flutter
#dart

Tutorial showing how to switch between Material and Cupertino widgets, and increase code reuse by building a platform-aware abstract base class with concrete sub-classes. Includes an overview of dialogs and their platform-specific differences.

Flutter: Input Validation with RegExp

Flutter: Input Validation with RegExp

#flutter
#dart
#input-validation

Overview of regular expressions (regex). How to implement a Regex validator in Dart and integrate it with Flutter's TextField widget, so that we can validate user input.

Flutter: Deep Dive with Widget Tests and Mockito

Flutter: Deep Dive with Widget Tests and Mockito

#flutter
#dart
#testing

Deep dive into widget tests. Introduces WidgetTester, Finder, matcher objects, and shows how to write tests for a login screen. Includes test mocks, mockito, acceptance criteria.

Flutter: Add Unit Tests to Your App

Flutter: Add Unit Tests to Your App

#flutter
#dart
#testing

How to extract business logic from your apps into testable classes, and write unit tests in Flutter. Uses a login demo example to write email & password validation tests.

Flutter Layouts Walkthrough: PageView, ListView, GridView, Slivers, CustomScrollView

Flutter Layouts Walkthrough: PageView, ListView, GridView, Slivers, CustomScrollView

#flutter
#dart
#layouts

How to build layouts with scrollable pages, lists, grids, and other convenience widgets. Includes slivers and their usage to create a hero image effect.

Flutter Layouts Walkthrough: Row, Column, Stack, Expanded, Padding

Flutter Layouts Walkthrough: Row, Column, Stack, Expanded, Padding

#flutter
#dart
#layouts

How to build basic layouts in Flutter. Also included: MainAxisAlignment, MainAxisSize, CrossAxisAlignment, Baseline, AlignmentDirectional, LayoutBuilder, SizedBox.

All Tutorials

Articles

Browse all 68 articles

Videos

Browse all 33 videos

Tips

Browse all 25 tips