/blocFromZeroToHero

This repo contains the code I wrote in my BLoC - From Zero to Hero Tutorial Series on my Flutterly - YouTube Channel

Primary LanguageDart

The Best & Most Complete Flutter BLoc Course - https://youtu.be/THCkkQ-V1-8

Why is that you may ask? I'll give you a couple of reasons:

  • Every topic is structured nicely on chapters and subchapters, and everyone of these are available on the YouTube timeline for easier "jump-to-topic" access.

  • Whenever you're not sure about a topic/implementation, after you covered the entire course, you can just jump right into the topic using YouTube timeline, just like a cheatsheet of bloc.

  • Nice animations for understanding and learning practices, real code for putting everything you learned to practice.

  • The Course is based on my BLoC - From Zero to Hero popular playlist, but obviously it's not just a merged version of all the videos. I have modified each and everyone of them to keep only the best of the best!

  • Many more you'll find by browsing out a couple of minutes into the course to see if it's right for you!

Before you check it out though, I would like to tell you that this series is designed with both the theoretical and most importantly, practical (coding) parts of every discussed topic. All of the project files can be found on my github page.

Also, the series was carefully monitored by the amazing creator of bloc_library, Felix Angelov, known on GitHub as @Felangel

A briefing of everything that's been covered in this playlist, so you know what to expect:

#1 - Why BLoC? In this video I explained why I chose bloc_library for both the state management solution and the architectural structure of my apps

#2 - BLoC Core Concepts - In this tutorial I got really in-depth in explaining streams, and the concepts of blocs & cubits.

#3 - Flutter BLoc Concepts - Here, I discussed each and every single one of bloc_library's concept like BlocProvider, BlocBuilder, BlocListener and many many more. These concepts are obviously explained and tested in every tutorial, since they are the base of bloc_library.

#4 - BLoC Architecture - In this tutorial I made a short introduction on what I believe it's the best architecture to follow in order to structure and scale your code over time! This video has no code inside my github page, since I'm planning on using it extensively on my follow-up tutorial series on building real world apps!

#5 - BLoC Testing - Testing is one of the most important pillars of programming, oftenly omitted by developers. In this video I'll explain what are the basics of testing a bloc-built small application.

#6 - BLoC Access & Navigation - In this tutorial I got really in-depth on what are the routing options on which you can successfully provide a cubit/bloc to the widget tree.

#7 - Bloc-to-bloc Communication - Here I wanted all my viewers to understand how important it is to know how to make 2 blocs/cubit communicate one with another.

#8 - BuildContext In-Depth - This tutorial is not really related to the bloc_library, but since build contexts are used everywhere inside a flutter app, I realised that most of people didn't understand how they really work. This video is also useful as it spreads out the knowledge gained from tutorial number 3 and 6.

#9 - Bloc 6.1.0 - During my tutorial series, a new version of bloc_library got released, containing some important changes like context.watch, context.read and context.select. All of these are covered in this video, as always, with intuitive examples.

#10 - Bloc State not Updating - In this video, I explained why most of the new developers encounter this popular issue of a state of a bloc/cubit not updating.

#11 - Maintaining State with Hydrated_Bloc - In this tutorial I got really in-depth about how you can store the state of multiple blocs/cubits on the app's internal storage on your device. This is a key concept in developing a successful Flutter app, having bloc_library as the state management feature.

#12 - Debugging Blocs/Cubits, Naming Conventions and other tips and tricks is the last video of this series, covering other important topics found inside the flutter_bloc library.