Zustand - Complete Tutorial

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 พ.ย. 2024

ความคิดเห็น • 248

  • @cosdensolutions
    @cosdensolutions  3 หลายเดือนก่อน +3

    Hope you enjoyed the video! I also have a really cool and unique course that will teach you way more than this video. You'll learn how to build an actual complex project with React. It's called "Project React" and you can find it at cosden.solutions/project-react. Also, I have a free weekly newsletter called "Import React" with tutorials, news, and cool stuff about React! You can sign up at cosden.solutions/newsletter?s=ytc

  • @zebcode
    @zebcode 8 หลายเดือนก่อน +23

    What i love the most about this video is that you do one thing at a time and explain it. So many people do 10 things at once leaving viewers confused and frustrated. Its slightly slower than I required but then you maintain a good cadance. You don't spend time over explaining things.

  • @VladyslavDihtiarenko
    @VladyslavDihtiarenko 9 หลายเดือนก่อน +14

    19 minutes, and I can already use Zustand now. Thank you so much! Very straightforward explanation!

  • @yashpatidar.8506
    @yashpatidar.8506 10 หลายเดือนก่อน +12

    I've watched many videos about Zustand, but only this one has clarified all my doubts. It's the best resource on the topic. Thank you for creating such an awesome and enlightening video! 👏🎉

  • @alkadoHs
    @alkadoHs 11 หลายเดือนก่อน +9

    Sir, now i should register you to my book as my favorite react teacher. You explain things very clear while keeping the best practices, awesome 😎

  • @Ksahdia
    @Ksahdia 11 หลายเดือนก่อน +2

    When I saw the video title, I thought we had to learn React in German now and wondered if that was the new trend or something. Never heard of Zustand before, thanks for the explanation!

    • @cosdensolutions
      @cosdensolutions  11 หลายเดือนก่อน

      Hahahahaha this killed me 😂

    • @Ksahdia
      @Ksahdia 11 หลายเดือนก่อน

      @@cosdensolutions :D

  • @aryansuvarna4923
    @aryansuvarna4923 11 หลายเดือนก่อน +3

    literally started learning Zustandd yesterday. THIS VIDEO IS A GOD SEND!

  • @theAsyncGuy
    @theAsyncGuy 2 หลายเดือนก่อน

    No extra talk. To the point and very useful.

  • @vladislaviy
    @vladislaviy 10 หลายเดือนก่อน +10

    Man you explanaitions of Redux and Zustand are the Top on youtube in terms of how fast and clear you provide it.. thank you!!!

  • @TannerBarcelos
    @TannerBarcelos 11 หลายเดือนก่อน +2

    Zustand is amazing. So light, simple and powerful.

  • @julienheng3880
    @julienheng3880 11 หลายเดือนก่อน +6

    This is what I had anticipated for. Great tutorial as always. Thank you very much!

  • @someone-on-earth
    @someone-on-earth 6 หลายเดือนก่อน +1

    Very easy to understand Zustand from this video, I've watched like 3-4 tutorials and was still confused as to what is really happening

  • @thisiscodereport
    @thisiscodereport 2 หลายเดือนก่อน +1

    You were absolutely right, there is everything I need to learn about Zustand, thanks a lot for great tutorial, and best practices advice. Appreciate it.

  • @YisneySoto
    @YisneySoto 2 หลายเดือนก่อน

    Wow, I'm amazed. I loved Redux toolkit, but Zustand is smooth. Thank you for the concise, yet useful explanation.

  • @uncore_
    @uncore_ 11 หลายเดือนก่อน +1

    Great video.I just want to make something more clear tough, the first practice you mention in the video does also go for redux and the reason why this works is because (old) { } === (new) { } would evaluate as false thus will be treated as state update,but say count is 1 then (old) 1 === (new) 1 would evaluate as true so no updates required

  • @vipulmaheshwari3568
    @vipulmaheshwari3568 2 หลายเดือนก่อน

    Thanks for the tutorial, I got immense clarity in using zustand.

  • @MicahBala
    @MicahBala 28 วันที่ผ่านมา

    And i was thinking zustand would be complex to implement. Thanks for this educative and easy to follow tutorial. My first tutorial on zustand and its quite clear.

  • @bharathkumar.k2983
    @bharathkumar.k2983 25 วันที่ผ่านมา +1

    This is an amazing tutorial about zustand. Thank you 🎉

  • @Oceancoastwaves
    @Oceancoastwaves 3 หลายเดือนก่อน

    Fantastic Stuff! When I just watched this I didn't get much out of it. When I paused the video for a while and coded along with you ,learned it better !Thanks again as he said " this will be your last place to learn Zustand and additional bonus you can go teach somebody ".

  • @harag9
    @harag9 11 หลายเดือนก่อน +3

    Great tutorial. I watched your Redux video a couple of weeks ago and now this... Since I'm still learning, which one would you recommend ? Would be nice to have a comparison video of pros & cons of them both.

    • @mleite1
      @mleite1 11 หลายเดือนก่อน

      Redux is like a dinosaur..

    • @cosdensolutions
      @cosdensolutions  11 หลายเดือนก่อน +2

      Zustand is simpler and less intimidating. There's less boilerplate code. Redux has been around for longer and is more stable. Both are great tbh and it really depends on more specific use cases in your project that put you towards one or the other!

  • @dimitmoto1716
    @dimitmoto1716 2 หลายเดือนก่อน

    Simple, clear and complete ( except a small detail, the devtools for zustand which can becvery usefull if the app is big).
    Thanks a lot!

  • @rakeshkumarparida98
    @rakeshkumarparida98 9 วันที่ผ่านมา

    New subscriber.I love the way you explain every line of code. ❤

  • @ToumaRenshi
    @ToumaRenshi 8 หลายเดือนก่อน

    great tutorial, i just started to learn about zustand from yesterday and today i am getting more to understand now. thank you! :)

  • @freeshorts4423
    @freeshorts4423 10 หลายเดือนก่อน +1

    you are really amazing sir. best react tutorial ever. lots of love from NEPAL

  • @xanteI
    @xanteI 11 หลายเดือนก่อน +62

    About the second best practice. Zustand documentation does not recommend creating multiple stores, they recommend creating slices grouped by functionality, and then spread the slices into the main store. I see this inaccuracy in almost all videos and articles on Zustand

    • @cosdensolutions
      @cosdensolutions  11 หลายเดือนก่อน +18

      Aha, you're correct. I had my terminology mixed up

    • @AllanSerna-j5y
      @AllanSerna-j5y 10 หลายเดือนก่อน

      hey, could you link this?

    • @rodjenihm
      @rodjenihm 9 หลายเดือนก่อน

      @@AllanSerna-j5y Google "Slices pattern Zustand"

    • @xanteI
      @xanteI 9 หลายเดือนก่อน

      ​@@den9943, yea, it's flux inspired architecture

    • @venicebeachsurfer
      @venicebeachsurfer 8 หลายเดือนก่อน

      This is not true. It is recommended because it is the most popular pattern, BUT there is no benefit to do this other than sticking the whole state under the devTools. Why would you want to include the whole state on a page that only cares about a small slice of it? Performance wise, you'd want seperate stores, I think.

  • @rameezh88
    @rameezh88 11 หลายเดือนก่อน

    Great tutorial. Concise, clear, and quick. Just stumbled upon your video when I was thinking about learning exactly this. Thank you!

  • @Lisa-r5h5p
    @Lisa-r5h5p 3 หลายเดือนก่อน

    LISA you are the best: song, rap, dance, and aura.

  • @Ameer_Ameen
    @Ameer_Ameen 6 หลายเดือนก่อน

    oh man idk how to thank you, you just saved me from spending money just to learn zustand .

  • @camilo5821
    @camilo5821 11 หลายเดือนก่อน +1

    thanks man!, i really enjoy your videos and shorts.

  • @nickwithaz
    @nickwithaz 8 หลายเดือนก่อน

    Great video - really clear explanation of the key concepts and how to apply them - thanks!

  • @Emeritus-Adabs
    @Emeritus-Adabs 24 วันที่ผ่านมา

    You made zustand easy for me. Thank you

  • @rdx86
    @rdx86 6 หลายเดือนก่อน

    Fantastic video, very easy to follow and understand. I'd love to see a video on Jotai as well. We've been using it a lot at work and have loved it so far. Only problem is that we can't access the Atom states outside of React components, unlike Zustand.

  • @SilvestreVivo
    @SilvestreVivo 17 วันที่ผ่านมา

    Something like this we have been using for Svelte for years.

  • @swado_2000
    @swado_2000 2 หลายเดือนก่อน

    Good tutorial. Love from 🇮🇳 India.

  • @bodnarsa
    @bodnarsa 2 หลายเดือนก่อน

    Thank you very much. Very valuable video. However, as a beginner, I would have preferred JavaScript code instead of TypeScript.

  • @bravesirrobin9576
    @bravesirrobin9576 2 หลายเดือนก่อน

    Pro tip: in the react dev tools settings you can stop it logging twice when in strict mode.

  • @TheFatafillo
    @TheFatafillo 11 หลายเดือนก่อน +5

    Great video, great explanation. Just a quick note: Would not be more nice to write handler functions and reference instead of arrow functions everywhere because in a real application there should be some testing for functionalities and named functions make this easier. Reading the code is more easier as well.

  • @OmarAmeen-sb8bt
    @OmarAmeen-sb8bt 9 หลายเดือนก่อน

    you are awesome learned a lot from this session it is definitely a premium content

  • @johnkumar958
    @johnkumar958 หลายเดือนก่อน

    Thank you very much for your teaching. Very helpful to me.

  • @letaciogalvao9908
    @letaciogalvao9908 8 หลายเดือนก่อน

    Completely awsome, just learned and already implemented in my job! Thanks a lot!

  • @omaracelys3217
    @omaracelys3217 11 หลายเดือนก่อน

    Thank you for the video !
    One recommandation,
    go through the documentation while coding,
    it helps to understand how to get used to the doc,
    because that can more maintanable et useful in my exprience

  • @Deepakkumar431
    @Deepakkumar431 10 หลายเดือนก่อน +1

    Accurate, to the point. Thanks a lot for sharing.

  • @Aliena92
    @Aliena92 21 วันที่ผ่านมา

    Perfect explanation! Thank you!

  • @YosephTeki
    @YosephTeki 4 หลายเดือนก่อน

    thanks mate, simple and straightforward explanation

  • @rogeert
    @rogeert 11 หลายเดือนก่อน +4

    I love Zustand.
    Can you make a video about signals?

  • @felix_nope
    @felix_nope 7 หลายเดือนก่อน

    Really nice video, but it made me flinch every time you said “Zustand.” :D

  • @tomasburian6550
    @tomasburian6550 11 หลายเดือนก่อน

    This vid made me sub to you. Lots of good info on this channel.
    Keep it up!

  • @peterng.
    @peterng. 10 หลายเดือนก่อน

    That's awesome!!
    Very concise, clear, and well-explained!
    Keep up the great work, man!

  • @jaylee9923
    @jaylee9923 2 หลายเดือนก่อน

    Well explained. Flawlessly. Thank you.

  • @InarusLynx
    @InarusLynx 17 วันที่ผ่านมา

    Watched both redux and zustand. Zustand seems perfect, for what I need. I just need a couple of data points shared across my app and I don't need all the redux bells and whistles for 2 or 3 things.

  • @flwi
    @flwi 7 หลายเดือนก่อน

    This looks interesting. Thanks for showing what zustand can do! I'm not a big fan of accessing & manipulation the state from "everywhere" though, since it has spaghetti-code-potential imo.

  • @reydantegarcia8776
    @reydantegarcia8776 5 หลายเดือนก่อน

    Thank you, great tuts. By the way, what extension that provides a code suggestion?

  • @0ninetyseven97
    @0ninetyseven97 11 หลายเดือนก่อน +1

    this gut deserves a million subs

  • @giovanio.3581
    @giovanio.3581 9 หลายเดือนก่อน

    Thanks for the tutorial, It was very easy to understand

  • @piotrzajas9014
    @piotrzajas9014 2 หลายเดือนก่อน

    Well, a nice video - i understand zustand now, it's almost just like redux tookit. You could mention persist and other things tho ;). Kudos.

  • @patriciogarcia5442
    @patriciogarcia5442 หลายเดือนก่อน

    Great video Cosden

  • @larrymcfarlane6202
    @larrymcfarlane6202 9 หลายเดือนก่อน

    Concise and to the point. Thanks!

  • @WinchesterD
    @WinchesterD 2 หลายเดือนก่อน

    Thank you for the explanation.

  • @samislam2746
    @samislam2746 หลายเดือนก่อน

    Thanks for your time

  • @fernandosoaresdev
    @fernandosoaresdev 11 หลายเดือนก่อน

    This is a great video, Derick! I have a doubt, if I may: StrictMode runs every hook twice, right? Why should we use StrictMode, and why/when no to use it? Thanks man, happy holidays!

    • @cosdensolutions
      @cosdensolutions  11 หลายเดือนก่อน

      Strict mode is there to prevent you from making mistakes in hooks and not cleaning up your dependencies. Ideally, it shouldn't affect you as you develop if you use it so I would keep it and see if anything breaks. If it does, then you might have a bug!

    • @chinmayghule8272
      @chinmayghule8272 10 หลายเดือนก่อน

      @@cosdensolutions Strict mode only re-renders in development (to catch bugs related to state or effects) and works normally in production where you use the build. The build runs normally.

  • @statuschannel8572
    @statuschannel8572 11 หลายเดือนก่อน +9

    either disable the copilot or use it 😵‍💫😵‍💫😵‍💫

    • @labhamjain3915
      @labhamjain3915 11 หลายเดือนก่อน +1

      Blud only uses it for personal use, for TH-cam he prefers to type it for viewers to get more connected and it's hectic to disable and enable it for every recording

    • @statuschannel8572
      @statuschannel8572 11 หลายเดือนก่อน +1

      @@labhamjain3915 dude you're telling disable the plugin is hard?
      click on extension
      click on settings icon
      disable(workspace)
      thats it, now you dont have to enable it, it will be disables only for the workspace. and copilot suggestions can distract the viewers so much!

    • @wiktorchojnacki9746
      @wiktorchojnacki9746 หลายเดือนก่อน

      @@labhamjain3915 It's not hectic. It's two clicks away.

    • @akeeb3715
      @akeeb3715 10 วันที่ผ่านมา

      You are his translator?

  • @gmjitendra
    @gmjitendra 11 หลายเดือนก่อน

    One more excellent learning. Thank you so much.

  • @hanspen5978
    @hanspen5978 11 หลายเดือนก่อน

    on point, I want to make a cart with it tomorrow

  • @minusmarigold98
    @minusmarigold98 9 หลายเดือนก่อน

    man , you are really best!

  • @_ayush_oswal
    @_ayush_oswal 8 หลายเดือนก่อน

    Really concise and easy to follow!!

  • @r34ct4
    @r34ct4 9 หลายเดือนก่อน

    Absolutely brilliant tutorial, It's rare that I understand something so organically and easily, props to you brah

  • @GHSB7462
    @GHSB7462 22 วันที่ผ่านมา

    Very good. Thank you so much.

  • @evanh.3744
    @evanh.3744 8 หลายเดือนก่อน

    clear and so helpful! it just what i need.thank you

  • @rohitghadage3220
    @rohitghadage3220 11 หลายเดือนก่อน

    You are one of the best TH-camr✨

  • @Mrkostas7777ify
    @Mrkostas7777ify 11 หลายเดือนก่อน +1

    Can you also prepare a video for Jotai? It would be very useful since it gains popularity

  • @Victor-wh9bs
    @Victor-wh9bs 29 วันที่ผ่านมา

    Thanks, Really helpful...

  • @zerdnelemo
    @zerdnelemo 7 หลายเดือนก่อน

    Great video and great tool. I will give it a try.

  • @yell4460
    @yell4460 11 หลายเดือนก่อน

    Hi great video, btw may I know what extensions are you using? Thankssss

  • @jeetdesaimusic
    @jeetdesaimusic 5 หลายเดือนก่อน

    Amazing Explanation sir!

  • @AMN_2080
    @AMN_2080 3 หลายเดือนก่อน

    perfect, thank you!

  • @nfaical3
    @nfaical3 11 หลายเดือนก่อน +1

    Thanks 👍, nice explanation

  • @patrickmichael4113
    @patrickmichael4113 10 หลายเดือนก่อน

    Very insightful. now i got a hang of it. please sir how do you get those code suggestions in your ide?

  • @erich2s
    @erich2s 11 หลายเดือนก่อน +1

    next jotai tutorial please🥹

  • @SKKhandokar1
    @SKKhandokar1 6 หลายเดือนก่อน

    I want using react react-query data store in zustand. How can i do it?

  • @collinsk8754
    @collinsk8754 3 หลายเดือนก่อน

    Excellent tutorial!

  • @KylanHurt
    @KylanHurt 9 หลายเดือนก่อน

    Would be cool if you showed how to install the Zukeeper extension as well.

  • @themindstorm9947
    @themindstorm9947 3 หลายเดือนก่อน

    How would you go about computed state?

  • @bingers_uk
    @bingers_uk 7 หลายเดือนก่อน

    Excellent tutorial, thanks

  • @Tesfamichael.G
    @Tesfamichael.G 10 หลายเดือนก่อน +1

    Saw it twice. Nice Content. What about Jotai

  • @chrishanthacosta4093
    @chrishanthacosta4093 8 หลายเดือนก่อน

    best zustand video..thanks

  • @AllanSerna-j5y
    @AllanSerna-j5y 10 หลายเดือนก่อน +1

    what about something like
    const { count, increment } = useStore();
    would that still be inefficient?

    • @sep1ol
      @sep1ol 10 หลายเดือนก่อน

      i have the same question
      did you figure this out?

  • @user-xu9tb7oe2z
    @user-xu9tb7oe2z 8 หลายเดือนก่อน

    brilliant education work! thanks!

  • @sajadzshoki
    @sajadzshoki 2 หลายเดือนก่อน

    great thank you so much

  • @Di-yes
    @Di-yes 11 หลายเดือนก่อน +1

    Question. Heard that to avoid rerenders it's better to use reselect with Redux. Is it required here aswell?

    • @cosdensolutions
      @cosdensolutions  11 หลายเดือนก่อน +1

      In here, you just need to select the state you want and that will cover a lot of your re-rendering issues

  • @arghyadas4138
    @arghyadas4138 9 หลายเดือนก่อน

    Great content
    Subscribed 🙌

  • @endlessia
    @endlessia 11 หลายเดือนก่อน +1

    Is there a lovely person who can show a github project using Zustand ? I want to see how to structure an app with Zustand, like should I split stores

    • @Iandavidandrino
      @Iandavidandrino 11 หลายเดือนก่อน +1

      I like to do a folder (& @ my job)
      store /
      - user
      - etc

  • @koleen3799
    @koleen3799 5 หลายเดือนก่อน

    Thanks a lot, mate! 🎉

  • @camstuart
    @camstuart 10 หลายเดือนก่อน

    I’ve been enjoying your videos, but one thing i can’t figure out is how to combine zustand (or other sate solution) with react query. Or if that’s a good idea. Feels like it is. EG, i have an audio element, which needs central state management because i want to control it from multiple other components. But it also gets its urls for the audio stream from the backend. I’d love to see a video of how or if you use react query with client state!

    • @cosdensolutions
      @cosdensolutions  10 หลายเดือนก่อน +1

      I actually have a video planned on exactly that ☺️

    • @camstuart
      @camstuart 10 หลายเดือนก่อน

      @@cosdensolutions looking forward to it! I have subscribed

  • @evbwe8891
    @evbwe8891 21 วันที่ผ่านมา

    hi can you create a tutorial with zustand using crud operation hooks with modal forms that automatically updates the table in the parent component?

  • @llibanogs
    @llibanogs 4 หลายเดือนก่อน

    great vid buddy

  • @saeidghorbani-s6b
    @saeidghorbani-s6b 3 หลายเดือนก่อน

    thank you very berief and useful

  • @blankvoid4137
    @blankvoid4137 6 หลายเดือนก่อน

    I'm having trouble making zustand work together with zusty and persist. How to use multiple middlewares together? Like persit, immer together. Also add dev tools to it?

  • @Fooney1
    @Fooney1 3 หลายเดือนก่อน

    wtf, I just a YT ad. Blocker bros! It's over!

  • @omarmoustafa2652
    @omarmoustafa2652 4 หลายเดือนก่อน

    This is really awesome

  • @Jaracara11
    @Jaracara11 9 หลายเดือนก่อน

    Excellent video!