Riverpod 2.0 - Complete Guide (Flutter Tutorial)

Sdílet
Vložit
  • čas přidán 21. 04. 2022
  • 📗 Learn from the written tutorial 👇👇
    resocoder.com/riverpod-2-tuto...
    🚨 🧑‍💻 Become a top-tier developer with the Flutter Developer Bootcamp:
    resocoder.com/fdb
    📧 Get Flutter news and resources:
    👉 flutter.education
    If you’ve been at least a bit active when it comes to Flutter packages in the last year or so, you’ve surely heard about Riverpod, a reactive caching and data-binding, or as some would say, state management package that is sort of an upgrade of the beloved Provider. I actually covered it with a tutorial quite some time ago when its API was still unstable.
    Riverpod has come a long way since then - it’s much more mature, helpful, and versatile. All these changes naturally mean that it’s time for a new tutorial to prepare you to fully utilize the power of Riverpod 2.0 and, most likely, also its upcoming versions.
    Go to my website for more information, code examples, and articles:
    ● resocoder.com
    Follow me on social media:
    ● / resocoder
    ● / resocoder
    ● / resocoder

Komentáře • 161

  • @dennismagolo8731
    @dennismagolo8731 Před 2 lety +38

    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

  • @amitjangra4416
    @amitjangra4416 Před rokem +13

    Best riverpod tutorial i found on youtube...Your efforts and such kind of nice content is worth appreciating. 😊

  • @leoingson
    @leoingson Před 2 lety +4

    Dude! Perfect timing! Thanks for your hard work (of the whole team)!

  • @Outlines
    @Outlines Před 8 měsíci

    I've watched several Riverpod videos but this one is the most concise and clear. Thank you.

  • @carlhlazo931
    @carlhlazo931 Před rokem +3

    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.

  • @_Amilio_
    @_Amilio_ Před 2 lety +2

    Yes thank you! Been looking for an updated Riverpod tutorial at the moment

  • @h3w45
    @h3w45 Před 2 lety +1

    Thank you for sharing full guides like this

  • @prashlovessamosa
    @prashlovessamosa Před rokem

    Thanks man for providing knowledge for free.I want to say thank you and your channel heaven to me.

  • @MaoRecords
    @MaoRecords Před rokem

    Thank you for this tutorial. It was clear and concise!

  • @R3d_Devil
    @R3d_Devil Před 2 lety

    This tutorial made me smile. Thank you for this.

  • @fzzz9024
    @fzzz9024 Před 2 lety

    Wow! thank you so much, considering your bootcamp to support your efforts. Much appreciated!

  • @yogaroutines6501
    @yogaroutines6501 Před 2 lety +1

    Excellent - able to understand the concepts deeper , thanks

  • @glrbrasil
    @glrbrasil Před rokem

    This was really useful! Very easy to understand. Thanks 👏

  • @winneze1
    @winneze1 Před 2 lety

    Yo my new project using riverpod and you just upload this. Perfect

  • @antijulius
    @antijulius Před 2 lety

    Thank you! Been looking to make the Provider => Riverpod jump!

  • @RandalLSchwartz
    @RandalLSchwartz Před 2 lety +20

    Great description. Easy to follow. Will be referring many to this!

  • @learnwithkiranthami
    @learnwithkiranthami Před 2 lety

    Holy shit, no other tutorials worked! Finally, this one shows how to do it right. Thank you!

  • @akbarmasterpadi
    @akbarmasterpadi Před 2 lety +1

    wow amazing content it's time to switch provider to Riverpod thanks

  • @Abdurrahman98XX
    @Abdurrahman98XX Před 2 lety

    What a perfect timing 🌹💛

  • @decodedfaith7556
    @decodedfaith7556 Před 2 lety

    thanks, this is more of an eye opener

  • @TheThornTech
    @TheThornTech Před 2 lety

    Great man! Thank you so much 🥰🙏

  • @SEOTADEO
    @SEOTADEO Před 2 lety +1

    Yay Reso Coder is back!! :D

  • @highbeekayoduro1521
    @highbeekayoduro1521 Před 4 měsíci

    This is very friendly, simple and well explained. I highly recommend this video

  • @srinivasrg5125
    @srinivasrg5125 Před 3 měsíci

    Super great tutorial! Thank You!

  • @Dieterbe
    @Dieterbe Před rokem

    Looks like I just found the best riverpod tutorial on the internet 🎉

  • @YazeedAlKhalaf
    @YazeedAlKhalaf Před 2 lety

    awesome work man!

  • @DguruZ
    @DguruZ Před 2 lety

    Genial! You back! Keep it up!

  • @MrJerikoSalivan
    @MrJerikoSalivan Před 2 lety

    Great tutorial!

  • @hongphuclevo2138
    @hongphuclevo2138 Před 2 lety +2

    It's perfect. Thank you. Could you do a video about data structures in dart?

  • @hafizibrohim599
    @hafizibrohim599 Před 2 lety +1

    Great job 👍👍👏👏

  • @cosmic_pixel
    @cosmic_pixel Před rokem

    This was amazing ❤

  • @moazahmed5388
    @moazahmed5388 Před 2 lety

    thanks for the content ♥

  • @miriamramstudio3982
    @miriamramstudio3982 Před rokem

    Great video. Thanks!!!

  • @code_with_sanjay
    @code_with_sanjay Před 2 lety

    After so many days ❤️

  • @anmolsharma9539
    @anmolsharma9539 Před rokem +1

    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 :)

  • @flyte9844
    @flyte9844 Před 2 lety

    Thanks exactly what I was looking for , what is the extension for the tree view lines ?

  • @romeubeatotech
    @romeubeatotech Před 2 lety +8

    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!

    • @pattobrien5228
      @pattobrien5228 Před 2 lety +3

      I was just about to make the same comment... @ResoCoder any feedback here would be appreciated, thanks!

    • @AlamgirTamboli
      @AlamgirTamboli Před 2 lety

      I believe he was just saying other methods that are available from a ref, but you're correct the preferred method is ref.watch.

    • @mijaelviricocheaparra7474
      @mijaelviricocheaparra7474 Před 2 lety

      @@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.

    • @colebq
      @colebq Před 2 lety +2

      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.

    • @AlexanderSuraphel
      @AlexanderSuraphel Před rokem

      What was the point of webSocketClientProvider when return FakeWebSocketClient().getCounterStream(start) ; works as well inside counterProvider?

  • @user-nu2nj7mf2z
    @user-nu2nj7mf2z Před 2 lety

    Finally I see your new video

  • @christianmarpert3844
    @christianmarpert3844 Před 2 lety +4

    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!

  • @seatconnect224
    @seatconnect224 Před 8 měsíci

    good tutorial, thanks

  • @mateenmehmood5675
    @mateenmehmood5675 Před rokem

    Riverpod is amazing. 2ndly Bloc

  • @Baraka0369
    @Baraka0369 Před 2 lety +20

    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
      @ahmedibrahim-a9312 Před 2 lety +1

      Hi is it easier than getX?

    • @Baraka0369
      @Baraka0369 Před 2 lety +7

      @@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 💪

    • @ahmedibrahim-a9312
      @ahmedibrahim-a9312 Před 2 lety

      @@Baraka0369 oh okkke thaanks 🔥

    • @moazahmed5388
      @moazahmed5388 Před 2 lety +1

      @@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 !!

    • @Baraka0369
      @Baraka0369 Před 2 lety

      @@moazahmed5388 you got it…
      Now you are aware, let’s give Riverpod a try ! 🔥

  • @caballero75RS
    @caballero75RS Před 2 lety

    Thanks bro!

  • @venir_dev
    @venir_dev Před 2 lety +9

    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)

    • @scottgodfrey7855
      @scottgodfrey7855 Před 2 lety

      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.

    • @ResoCoder
      @ResoCoder  Před 2 lety +2

      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.

    • @quangle5701
      @quangle5701 Před 2 lety +2

      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.

    • @lvenir4702
      @lvenir4702 Před 2 lety +1

      @@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.

  • @Hema115
    @Hema115 Před 2 lety +5

    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

  • @oussamaberhili
    @oussamaberhili Před 9 měsíci

    thanks man

  • @mohammadmujahid8850
    @mohammadmujahid8850 Před rokem +2

    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.

    • @user-tf4cd2rw3t
      @user-tf4cd2rw3t Před 11 měsíci

      It scared me. I actually hope he is okay 😰 it‘s not common to just quit his passion with such a huge fanbase.

  • @mandeno4063
    @mandeno4063 Před rokem

    good work

  • @subrotoxing8214
    @subrotoxing8214 Před 2 lety +5

    Lol just about time when i looked for riverpod tutorial thank you for this

  • @prabeshbista3457
    @prabeshbista3457 Před 2 lety

    Love from Nepal

  • @_dinesh
    @_dinesh Před 2 lety

    You are awesome! Thank you so much.. Do you think this is better than BLoC?

  • @hasanibrahim4887
    @hasanibrahim4887 Před rokem

    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

  • @sankethb.k642
    @sankethb.k642 Před 2 lety +1

    Feels so good to see you back

  • @user-lr6px8bq4n
    @user-lr6px8bq4n Před rokem

    Hello ,May I ask which architecture do you suggest for flutter development ???

  • @gogalcloud
    @gogalcloud Před rokem

    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 ?

  • @dolbysoundsofficial9323

    Riverpod Tutorial From Reso Waiting From Long time(Bootcamp)😵😋Finally Here

  • @lightkingbeknazarov7919
    @lightkingbeknazarov7919 Před 2 lety +11

    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.

  • @doulainc.498
    @doulainc.498 Před 2 lety

    What! This is really great tutorial. Holy f

  • @swtmply
    @swtmply Před 2 lety +1

    Very good tutorial, may I know the extensions you use. I especially want to know the bars on every widget.

    • @kylerbesher9402
      @kylerbesher9402 Před rokem

      might be a bit late for this, but in the vscode settings, search for and enable 'preview flutter ui guides' and then restart vscode

  • @tedneoh6011
    @tedneoh6011 Před 2 lety

    what extension you are using with all these tree view "LL" ?

  • @faisalmushtaq2287
    @faisalmushtaq2287 Před rokem

    Can u do clean architecture using riverpod.

  • @becbelk
    @becbelk Před 2 lety

    I want to ask if flutter support the micro-services architecture

  • @EhamPala
    @EhamPala Před 9 měsíci

    reso coder,it's been a long time no post
    We're missing your teaching Sir...!!!

  • @laurapeterson146
    @laurapeterson146 Před rokem

    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?

  • @irhas6555
    @irhas6555 Před 2 lety

    how to handle form validation using riverpod??

  • @AnalyticalAyush
    @AnalyticalAyush Před rokem

    Can anyone tell me how to the linkage of brackets on VS Code, like in the tutorial I can see that there's a white linkage between containers and child just like android studio. How to get that in vs code?

  • @heartcoder4179
    @heartcoder4179 Před 2 lety

    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.

  • @berkaykurkcu
    @berkaykurkcu Před 2 lety +2

    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!

  • @zainansari1057
    @zainansari1057 Před 2 lety

    Hey can you make a video of latest flutter bloc version in DDD playlist

  • @badalah8272
    @badalah8272 Před 2 lety

    I love the voice now much better

  • @aidanmacks
    @aidanmacks Před 2 lety +2

    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?

  • @AriPharmacist
    @AriPharmacist Před 2 lety +1

    When you need something, CZcams algorithm takes care of it.

  • @GeekyLOAF
    @GeekyLOAF Před rokem

    make a video on the extensions you are currently using

  • @rivella99
    @rivella99 Před 2 lety

    Would you mind indexing the video?

  • @cgutierr-zgz
    @cgutierr-zgz Před 2 lety

    Hi, could you please tell me what's the VSCode extension that shows this bars joining the tree of widgets?
    Thanks!

    • @jaroslavkovar1687
      @jaroslavkovar1687 Před rokem +1

      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.

  • @tbnh3908
    @tbnh3908 Před rokem +2

    hello are you still there?

  • @mayur5126
    @mayur5126 Před 2 lety +1

    Why are there two different riverpod packages, riverpod and flutter_riverpod?

  • @jacopoguzzo4097
    @jacopoguzzo4097 Před 2 lety

    What's the font name of vscode?

  • @dev.floody
    @dev.floody Před 2 lety

    What font you use?

  • @_3clipse_
    @_3clipse_ Před 5 měsíci

    Compile time safety... you won me already

  • @yasseralsaidi
    @yasseralsaidi Před rokem

    Riverpod 2.0 released today, any update here?

  • @skirllexrude8170
    @skirllexrude8170 Před 2 lety

    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.

  • @swplogic4158
    @swplogic4158 Před 2 lety

    I love flutter_bloc.

  • @mangmun001
    @mangmun001 Před 2 lety +1

    I still waiting for full tutorials for real project examples like Riverpod + Firebase.

  • @AdamSmaka
    @AdamSmaka Před 2 lety

    What about cubit + Riverpod on 100k subscribers celebration ? :)

  • @iabhishekpatil4415
    @iabhishekpatil4415 Před 2 lety

    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?

  • @mokshmahajan6340
    @mokshmahajan6340 Před 2 lety

    At 49:05 Line no. 24, can't we just use ref.read() ?

    • @screamiboy
      @screamiboy Před 2 lety +1

      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…

  • @geenews6207
    @geenews6207 Před rokem

    Why you shifted from Unity game development to Flutter?

  • @redz4110
    @redz4110 Před 2 lety

    What if I want to pass two or more parameters to the counterProvider?

    • @scottgodfrey7855
      @scottgodfrey7855 Před 2 lety

      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.

    • @TheFuckULooknAtFilms
      @TheFuckULooknAtFilms Před 2 lety +1

      Create a class

    • @redz4110
      @redz4110 Před 2 lety

      @@TheFuckULooknAtFilms yep thanks chris, it is explained in the official documentation too, I read it just after wrote this comment

  • @gap182
    @gap182 Před 2 lety +1

    I would really like to join the Boot Camp, but for us Latin people is hard to pay it 😞

  • @telostia
    @telostia Před 7 měsíci

    what happened to reso coder? why is this his last clip?

  • @trunghvbk
    @trunghvbk Před 2 lety +2

    like first, watch later

  • @ElVerdaderoAbejorro
    @ElVerdaderoAbejorro Před rokem

    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.

  • @ozbekchajavascript1209
    @ozbekchajavascript1209 Před rokem +1

    Are you alive Reso Coder ? Why aren't you uploading new videos ?

  • @aimensayoud8563
    @aimensayoud8563 Před 2 lety +1

    thx, but i think it needs another part , you haven't covered that much in this tuto

  • @MythiPlayz
    @MythiPlayz Před 2 lety

    I think everybody would absolutely cream their pants if you could get the developer and interview them :)

  • @RioM8z
    @RioM8z Před 2 lety

    Bude pokračovanie ?

    • @ResoCoder
      @ResoCoder  Před 2 lety

      Nebude úplne pokračovanie, ale bude Riverpod + Bloc.

  • @bensalkb6902
    @bensalkb6902 Před 2 lety +1

    would be perfect if it was straight forward, felt like its laggin. But good tutorial though

  • @ccoedIT
    @ccoedIT Před rokem

    PLs New videos😢😢😢😢

  • @loopassembly
    @loopassembly Před 2 lety

    what is ur vs theme