Avatar or Logo

The Ultimate List Of Flutter Resources (Over 200!)

Dec 31, 2020

The number of people who have asked me to share Flutter Resources they can use to learn development has been insane! And since I started my Flutter blog, the number has grown exponentially.

I hate giving half-hearted responses, so I decided to create a massive and organized list of resources to help aspiring developers grow and stay organized. This list contains articles, YouTube videos, courses (non-affiliate), and even GitHub repositories that will help you kick off your Flutter development.

Although this list can be used as a roadmap, I don’t recommend it, reason being that a lot of the topics mentioned are not necessary for professional Flutter development.

For example, you don’t need to learn about every state management solution. Just picking one or two from this list will be good enough to understand the fundamentals.

One more side note. This list is not rigid, meaning that it will be updated from time to time.

Happy Fluttering 🚀

Dart

Dart is the programming language used to build Flutter apps. Before you use Flutter (or even dive into these Flutter resources), you should be at least a little familiar with Dart and programming in general. Here are some Flutter resources that will help you improve your Dart skills!

Introduction

Effective Programming

Asynchronous Programming

Advanced Concepts

Recommended Course

Welcome To Flutter

Now that you know at least, the fundamentals of Dart programming, you can get started with learning how to develop apps with Flutter 🎉. These Flutter resources cover the basics of creating apps with Flutter.

Flutter - Beautiful native apps in record time - Flutter Resources


CC - flutter.dev

Widgets

Layouts

Assets

Navigation and Routing

Animations

Json & Serialization

Networking

Local Storage

Firebase 

Note: A lot of Firebase Tutorials are now outdated due to recent package updates. Any potentially outdated Flutter Resources will be marked with an asterisk (*). The most reliable learning resource is the official documentation.

Recommended Course

State Management

State management can be very confusing to new Flutter Developers, the reason being that there are so many options.

But you do not need to know how to use every state management solution to be considered a good Flutter Developer.

Just knowing how to manage state using one or two packages and of course, the default state management solution in Flutter should be enough. The following Flutter resources (sorted by package/method) will help you learn the basics of using each solution.

Inherited Widget

Provider

Bloc & Cubit

Redux 

MobX

GetIt + GetIt Mixin

Riverpod

GetX

Binder

Architecture, Structure & Testing

If you’re a fan of writing your UI, application logic, and business logic in a single widget, this section is definitely for you. These Flutter Resources will teach you how to build scalable and maintainable applications using Flutter.

Flutter Resources - Codemagic Architecture.


CC - Codemagic.io

Architecture

Structure

Testing

Deployment

Now that you’ve built your Flutter app, how do you release it to the stores? The following Flutter Resources cover just that.

Release

CI/CD

Contributing to Flutter

Want to make Flutter more fun to work with? Here’s how you can do that!

Packages and Plugins

Contributing to The Framework

Miscellaneous Topics

The next few Flutter Resources cover more specific and advanced topics.

More Widgets

More Animations

Better Development

Performance

Painting

Rendering

Game Development

New: Null Safety

More Resources

The following Flutter resources contain a list of websites, creators, tools and repositories to help you improve your Flutter Development.

Blogs and Websites

Youtube Channels

More Resource Collections

Podcasts

Roadmaps

Cool Repositories

Books