Thank you for putting this out. Your approach in explaining the riverpod architecture using "familiar" concepts i.e global Class declaration, class instances made it easy for me to follow and grasp. Please keep up the great work. I really like your tutorials and your teaching approach.
LoL, I’ve been learning Riverpod for 3 days now after using GetX, BLoC etc…. I think it’s going to be the best state management package ! Really easy to understand and to use 🔥💪 You’re just in time !!!
@@ahmedibrahim-a9312 GetX is really powerful, it allows u to make DI, State Management, Routing etc.. very easily But, you’ll can’t be able to think out of the box and your whole way of developing with Flutter will be replaced by developing in GetX, not in Flutter anymore… Riverpod is really easy to understand and very very easy to use. Much more than GetX 💪
@@Baraka0369 you got that absolutely right !! even me using Flutter straight for more than 2 years , almost 3 years , i started to forget some basics as you don't deal with "context" anymore. also ModalBottomSheets , ScaffoldMessengers , Snackbars , Dialogs & finally .. routing , this is a mess !!
Fantastic tutorial! At 48:30 you mention the use use of ref.read inside the counterProvider, but the riverpod documentation advises us to not do that (and use watch instead). You have a great channel!
@@AlamgirTamboli In fact they both are not the same, you can use watch when you need listen over a provider and you can use read when the interaction with the provider is "one time" and you don't need listening over it.
Depends on your use case. As @Mijael Viricochea Parra mentioned, when using `watch` your provider will refresh when the one you are watching emits a change. If using `read` it will not refresh. In the docs they are suggesting to use `watch` as that would be more "safe" down the road, in case later you decide that the provider you are reading should start emitting changes.
I respect your creativity. Everything is clear and understandable. I would really like a new playlist about blocks (ddd course) Please don't ignore your followers.
at 31:00 it encourages to use read to access the provider state and increment it, but in the official documentation, it encourages to use watch instead: "Using ref. read should be avoided as much as possible because it is not reactive." "If you can, it is almost always better to use watch". "You might be tempted to use ref. read to optimize the performance. But this is a very bad practice and can cause bugs that are difficult to track." "(using ref.watch) our button will not rebuild when the counter increments. It also supports cases where the counter is reset." The doc also mentions not to use ref. watch inside onPressed (watch method should not be called asynchronously). So the best practice seems to be calling ref. watch before onPressed to get a reference of the state provider, then use that reference in the onPressed to increment the state.
Hello @ResoCoder, I have noticed your latest video almost a year ago, are not you working onFlutter? Please keep sharing your knowledge, it is one of the best channel for Flutter.
I'm sorry but this video is just covering Riverpod 1.0.0 features. Riverpod 2.0.0 (in development atm) is introducing advanced APIs to handle specific scenarios (onCancel events, caching, etc.). These are just the basics of Riverpod that were introduced in v0.14 (besides the ref.listen API)
The last time he did a tutorial on Riverpod was before 1.0.0. So, there are some api changes and widget updates that he wasn’t able to cover in the original.
This is an introductory tutorial for Riverpod as a whole following the syntax of the version 1.0.0/2.0.0 that doesn’t go into the advanced territory. The APIs you mentioned are maybe something for a separate tutorial.
I agree, it would be helpful to give some introduction about new features of the version 2.x comparing the version 1.x. Otherwise, the title of the video might seem to be misleading. Thanks.
@@ResoCoder the "whole new syntax" is about Riverpod 1.0 and doesn't belong to 2.0, where new APIs are introduced instead of what you present in the video. Nothing about riverpod 2.0 ever shows in this video.
Hey, great tutorial again! thks a lot! Am using BLoC currently, well flutter_bloc which is using Provider under the hood. How would you combine Riverpod with the BLoC Pattern? Simply StreamProvider and passing the BLoC/ cubit in? As I personally do not like providing thinks down the widget tree, use get_it to pass in the BLoC/ Cubit.... maybe this could be replaced with Riverpod... just thinking loudly ;) maybe you have examples on that at hand? thks again!
Thanks for this awesome video it really helped me learning riverpod quickly. Just one request can you please make the same tutorial for the new bloc update . Thanks once again :)
Hi, can you make a TL;DR for returning Flutter developers? Make an All-In-One video each year that sums up all the basics (File structure, Riverpod, Freezed, Flutter Basics, and what is the right order to start an app) this video series idea is missing on youtube and would make your channel grow alot further
25:00 "we are actually gonna rebuild the whole widget" This scares me. Are you saying if I only listen to changes in the Text() widget the whole tree will still be rebuilt instead of just the Text() widget? Because when you use StatefulWidget, only the Text() widget would be rebuilt, so if that is the case then this would be a huge performance issue.
Great tutorials as always. I watched this as a means to look for breaking changes when migrating from 1.0 to 2.0 ... I cant actually see anything. Does anyone have any advice on this subject?
Thank you for this amazing tutorial. If I may ask a question, when using autoDispose on the StateNotifierProvider is causing "Tried to use ReposNotifier after `dispose` was called" do you have any idea what's happening ? thank you in advance
Hi Reso Coder , I have been following you for so long , I wanted to ask you what do you think about Flutterflow capability if i want to use except firebase, i have been using it from 1 week for design and animations , it doesn't provide me any state mgmt, clean architecture approach, neither testing I wanted to know your thoughts abt it ?
I think this is a built-in VSCode feature. To implement it, simply go to VSCode settings and search for *Dart:Preview Flutter Ui Guides* and check its box.
I would love to see an implementation with Slider, I am trying to learn Riverpod and I couldn't figure out how to take a value from Slider and provide it to Counter widget, instead of hard coding it to 5. Other than that, great introduction to Riverpod!
I took Reso Coder's Flutter Developer Bootcamp course. But in there he used Riverpod version 0.14, which is very outdated. So I'm wondering if the course (especially the latter part about the production-ready app) is still usable regarding UI and Riverpod state management parts. Does anyone know about this?
You can also provide reference types to a state notifier. So, you can also provide methods from an object that extends a state notifier. He has a video dedicated to state notifier provider in riverpod.
What's the solution for rebuild entire build method?? I just want to rebuild counter text widget !! one solution is to seperate text widget, what's the other?
28:58 read notifier
29:58 watch 2 print
32:10 dispose
39:25 ref.listen for alerts typestuff--run after
47:00 stream provider
Best riverpod tutorial i found on youtube...Your efforts and such kind of nice content is worth appreciating. 😊
I've watched several Riverpod videos but this one is the most concise and clear. Thank you.
Holy shit, no other tutorials worked! Finally, this one shows how to do it right. Thank you!
Yes thank you! Been looking for an updated Riverpod tutorial at the moment
This is very friendly, simple and well explained. I highly recommend this video
Looks like I just found the best riverpod tutorial on the internet 🎉
Thank you for putting this out. Your approach in explaining the riverpod architecture using "familiar" concepts i.e global Class declaration, class instances made it easy for me to follow and grasp. Please keep up the great work. I really like your tutorials and your teaching approach.
Great description. Easy to follow. Will be referring many to this!
This tutorial made me smile. Thank you for this.
Yo my new project using riverpod and you just upload this. Perfect
LoL, I’ve been learning Riverpod for 3 days now after using GetX, BLoC etc….
I think it’s going to be the best state management package ! Really easy to understand and to use 🔥💪
You’re just in time !!!
Hi is it easier than getX?
@@ahmedibrahim-a9312 GetX is really powerful, it allows u to make DI, State Management, Routing etc.. very easily
But, you’ll can’t be able to think out of the box and your whole way of developing with Flutter will be replaced by developing in GetX, not in Flutter anymore…
Riverpod is really easy to understand and very very easy to use. Much more than GetX 💪
@@Baraka0369 oh okkke thaanks 🔥
@@Baraka0369 you got that absolutely right !!
even me using Flutter straight for more than 2 years , almost 3 years , i started to forget some basics as you don't deal with "context" anymore. also ModalBottomSheets , ScaffoldMessengers , Snackbars , Dialogs & finally .. routing , this is a mess !!
@@moazahmed5388 you got it…
Now you are aware, let’s give Riverpod a try ! 🔥
Fantastic tutorial! At 48:30 you mention the use use of ref.read inside the counterProvider, but the riverpod documentation advises us to not do that (and use watch instead). You have a great channel!
I was just about to make the same comment... @ResoCoder any feedback here would be appreciated, thanks!
I believe he was just saying other methods that are available from a ref, but you're correct the preferred method is ref.watch.
@@AlamgirTamboli In fact they both are not the same, you can use watch when you need listen over a provider and you can use read when the interaction with the provider is "one time" and you don't need listening over it.
Depends on your use case. As @Mijael Viricochea Parra mentioned, when using `watch` your provider will refresh when the one you are watching emits a change. If using `read` it will not refresh. In the docs they are suggesting to use `watch` as that would be more "safe" down the road, in case later you decide that the provider you are reading should start emitting changes.
What was the point of webSocketClientProvider when return FakeWebSocketClient().getCounterStream(start) ; works as well inside counterProvider?
I respect your creativity. Everything is clear and understandable. I would really like a new playlist about blocks (ddd course)
Please don't ignore your followers.
Thanks man for providing knowledge for free.I want to say thank you and your channel heaven to me.
It's perfect. Thank you. Could you do a video about data structures in dart?
Excellent - able to understand the concepts deeper , thanks
Yay Reso Coder is back!! :D
at 31:00 it encourages to use read to access the provider state and increment it, but in the official documentation, it encourages to use watch instead:
"Using ref. read should be avoided as much as possible because it is not reactive."
"If you can, it is almost always better to use watch".
"You might be tempted to use ref. read to optimize the performance. But this is a very bad practice and can cause bugs that are difficult to track."
"(using ref.watch) our button will not rebuild when the counter increments. It also supports cases where the counter is reset."
The doc also mentions not to use ref. watch inside onPressed (watch method should not be called asynchronously). So the best practice seems to be calling ref. watch before onPressed to get a reference of the state provider, then use that reference in the onPressed to increment the state.
Dude! Perfect timing! Thanks for your hard work (of the whole team)!
Thank you for sharing full guides like this
Wow! thank you so much, considering your bootcamp to support your efforts. Much appreciated!
Super great tutorial! Thank You!
Hello @ResoCoder, I have noticed your latest video almost a year ago, are not you working onFlutter?
Please keep sharing your knowledge, it is one of the best channel for Flutter.
It scared me. I actually hope he is okay 😰 it‘s not common to just quit his passion with such a huge fanbase.
Feels so good to see you back
Thank you! Been looking to make the Provider => Riverpod jump!
Lol just about time when i looked for riverpod tutorial thank you for this
wow amazing content it's time to switch provider to Riverpod thanks
After so many days ❤️
Finally I see your new video
Thank you for this tutorial. It was clear and concise!
I'm sorry but this video is just covering Riverpod 1.0.0 features. Riverpod 2.0.0 (in development atm) is introducing advanced APIs to handle specific scenarios (onCancel events, caching, etc.). These are just the basics of Riverpod that were introduced in v0.14 (besides the ref.listen API)
The last time he did a tutorial on Riverpod was before 1.0.0. So, there are some api changes and widget updates that he wasn’t able to cover in the original.
This is an introductory tutorial for Riverpod as a whole following the syntax of the version 1.0.0/2.0.0 that doesn’t go into the advanced territory. The APIs you mentioned are maybe something for a separate tutorial.
I agree, it would be helpful to give some introduction about new features of the version 2.x comparing the version 1.x. Otherwise, the title of the video might seem to be misleading. Thanks.
@@ResoCoder the "whole new syntax" is about Riverpod 1.0 and doesn't belong to 2.0, where new APIs are introduced instead of what you present in the video. Nothing about riverpod 2.0 ever shows in this video.
Riverpod is amazing. 2ndly Bloc
thanks, this is more of an eye opener
Hey, great tutorial again! thks a lot! Am using BLoC currently, well flutter_bloc which is using Provider under the hood. How would you combine Riverpod with the BLoC Pattern? Simply StreamProvider and passing the BLoC/ cubit in? As I personally do not like providing thinks down the widget tree, use get_it to pass in the BLoC/ Cubit.... maybe this could be replaced with Riverpod... just thinking loudly ;) maybe you have examples on that at hand? thks again!
What a perfect timing 🌹💛
This was really useful! Very easy to understand. Thanks 👏
Thanks for this awesome video it really helped me learning riverpod quickly. Just one request can you please make the same tutorial for the new bloc update .
Thanks once again :)
Hi, can you make a TL;DR for returning Flutter developers? Make an All-In-One video each year that sums up all the basics (File structure, Riverpod, Freezed, Flutter Basics, and what is the right order to start an app) this video series idea is missing on youtube and would make your channel grow alot further
Thanks exactly what I was looking for , what is the extension for the tree view lines ?
This was amazing ❤
Genial! You back! Keep it up!
reso coder,it's been a long time no post
We're missing your teaching Sir...!!!
Compile time safety... you won me already
Great video. Thanks!!!
good tutorial, thanks
Great tutorial!
Great job 👍👍👏👏
Very good tutorial, may I know the extensions you use. I especially want to know the bars on every widget.
might be a bit late for this, but in the vscode settings, search for and enable 'preview flutter ui guides' and then restart vscode
When you need something, TH-cam algorithm takes care of it.
Love from Nepal
Riverpod Tutorial From Reso Waiting From Long time(Bootcamp)😵😋Finally Here
awesome work man!
I love the voice now much better
What! This is really great tutorial. Holy f
Great man! Thank you so much 🥰🙏
Can u do clean architecture using riverpod.
make a video on the extensions you are currently using
thanks for the content ♥
Hello ,May I ask which architecture do you suggest for flutter development ???
like first, watch later
thanks man
good work
You are awesome! Thank you so much.. Do you think this is better than BLoC?
Are you alive Reso Coder ? Why aren't you uploading new videos ?
hello are you still there?
25:00 "we are actually gonna rebuild the whole widget" This scares me. Are you saying if I only listen to changes in the Text() widget the whole tree will still be rebuilt instead of just the Text() widget? Because when you use StatefulWidget, only the Text() widget would be rebuilt, so if that is the case then this would be a huge performance issue.
Why are there two different riverpod packages, riverpod and flutter_riverpod?
Thanks bro!
Great tutorials as always.
I watched this as a means to look for breaking changes when migrating from 1.0 to 2.0 ... I cant actually see anything. Does anyone have any advice on this subject?
Thank you for this amazing tutorial. If I may ask a question, when using autoDispose on the StateNotifierProvider is causing "Tried to use ReposNotifier after `dispose` was called" do you have any idea what's happening ? thank you in advance
I love flutter_bloc.
I want to ask if flutter support the micro-services architecture
Hey can you make a video of latest flutter bloc version in DDD playlist
Hi Reso Coder , I have been following you for so long , I wanted to ask you what do you think about Flutterflow capability if i want to use except firebase, i have been using it from 1 week for design and animations , it doesn't provide me any state mgmt, clean architecture approach, neither testing
I wanted to know your thoughts abt it ?
how to handle form validation using riverpod??
Would you mind indexing the video?
Hi, could you please tell me what's the VSCode extension that shows this bars joining the tree of widgets?
Thanks!
I think this is a built-in VSCode feature. To implement it, simply go to VSCode settings and search for *Dart:Preview Flutter Ui Guides* and check its box.
what extension you are using with all these tree view "LL" ?
Riverpod 2.0 released today, any update here?
I would love to see an implementation with Slider, I am trying to learn Riverpod and I couldn't figure out how to take a value from Slider and provide it to Counter widget, instead of hard coding it to 5.
Other than that, great introduction to Riverpod!
You could probably use a state provider
What font you use?
Be honest ResoCoder how long it took for you to develop the github Client App and how long it took you to make that bootcamp.
I took Reso Coder's Flutter Developer Bootcamp course. But in there he used Riverpod version 0.14, which is very outdated.
So I'm wondering if the course (especially the latter part about the production-ready app) is still usable regarding UI and Riverpod state management parts.
Does anyone know about this?
At 49:05 Line no. 24, can't we just use ref.read() ?
I asked myself the same question. The riverpod documentation calls the approach with read a bad practice. But I did not found a explanation why…
What if I want to pass two or more parameters to the counterProvider?
You can also provide reference types to a state notifier. So, you can also provide methods from an object that extends a state notifier. He has a video dedicated to state notifier provider in riverpod.
Create a class
@@TronKTA yep thanks chris, it is explained in the official documentation too, I read it just after wrote this comment
34:38 sounds pretty gangsta to me 🤐
I still waiting for full tutorials for real project examples like Riverpod + Firebase.
Why you shifted from Unity game development to Flutter?
I would really like to join the Boot Camp, but for us Latin people is hard to pay it 😞
would be perfect if it was straight forward, felt like its laggin. But good tutorial though
What's the font name of vscode?
What about cubit + Riverpod on 100k subscribers celebration ? :)
what happened to reso coder? why is this his last clip?
thx, but i think it needs another part , you haven't covered that much in this tuto
What's the solution for rebuild entire build method?? I just want to rebuild counter text widget !! one solution is to seperate text widget, what's the other?
BlocBuilder
I think everybody would absolutely cream their pants if you could get the developer and interview them :)
what is ur vs theme
u found it?
@@Malaq4822 is it ayu dark?
@@loopassembly One Dark Pro
@@Malaq4822 ty man
Bude pokračovanie ?
Nebude úplne pokračovanie, ale bude Riverpod + Bloc.
PLs New videos😢😢😢😢