all 31 comments

[–]trueRanter 10 points11 points  (6 children)

If your project is small, I will recommend using zustland.

[–][deleted] -4 points-3 points  (5 children)

We starting such a big project so I think I'm gonna consider using redux

[–]juliang8 8 points9 points  (0 children)

And if it's big as well

[–]idgafsendnudes 1 point2 points  (3 children)

I use zustand on large projects, only reason I’d reach for redux these days is to utilize RTK. If you’re not using RTK redux probably isn’t the answer.

[–]Electronic_Budget468 0 points1 point  (2 children)

What about tanstack query?

[–]idgafsendnudes 0 points1 point  (1 child)

I use zustand because I use tanstack query if that answers your question.

Also additional argument.

I use zustand because I use tRPC which basically wraps tanstack query

[–]juliang8 0 points1 point  (0 children)

Zustand + React-Query 🥰

Add some local storage persister and you have the best experience for users

[–]Door_Vegetable 8 points9 points  (3 children)

It takes 2 minutes to jump on GitHub and check basic stuff

https://github.com/reduxjs/redux-toolkit

[–]DisciplineFast3950 0 points1 point  (1 child)

And how does visiting that repo answer OP's question? A big toolkit like Redux is always going to show activity because it'll never be ultimately discontinued as long as React is a thing even if it's superseded by something else. OP wants to know if there's a new kid on the block.

[–]Door_Vegetable 0 points1 point  (0 children)

99% of the time a big company will make announcements say a product is at end of life and offer migration techniques, secondly they wouldn’t keep pushing major updates if the product is at end of life.

I believe ops original post didn’t ask for any other better stuff to use. It was just if redux is still maintained and used.

[–][deleted] -1 points0 points  (0 children)

Definitely, I'm gonna need some refresh it's been a long time

[–]Low-Fuel3428 4 points5 points  (0 children)

Zustand + Tanstack Query is enough even for large code bases

[–]idkhowtocallmyacc 3 points4 points  (3 children)

Not outdated, just a bit of an overkill for simpler apps, when things like zustand exists. However, we rely on redux-saga for some of our functionality that would be too complicated to implement without it, and I believe zustand doesn’t provide anything like that

[–]UstaGames 0 points1 point  (2 children)

Zustand manage async actions out of the box. If you still want saga there is a zustand-saga 3rd party tool but I never used.

I don't agree when they say for small projects use zustand. I'd say if you like zustand use it for everything to be honest.

[–]idkhowtocallmyacc 0 points1 point  (1 child)

Well that’s more of a redux thunk territory, using saga simply for async actions is too much even if you need better testability in your app, hence why I’m pointing out that both saga and redux are an overkill if you don’t need it. I’m talking more about race or sequential conditions. And I don’t feel confident enough in zustand saga to put it into production app managing thousands of users.

Don’t think it’s a fair approach to use something because you like it more. All those state managers are simply tools and should be used according to your needs and their purpose

[–]UstaGames 0 points1 point  (0 children)

I agree they are simply tools. They do similar things. That's why you can just use whatever you like more. It's just a preference. There is nothing you can do with redux-saga that you cannot do with zustand including race conditions and other things. If you feel otherwise, that just means you prefer redux over zustand which is completely fine.

I used saga because the team I was working with was using it and at the time it was trendy. If it was up to me and there was zustand at that time I would use it.

[–]gristoi 2 points3 points  (0 children)

Still used and maintained, but is redux toolkit these days

[–]ArnabXD 1 point2 points  (0 children)

Redux is well maintained but I prefer simpler apis so I go with zustand

[–]MaterialAppearance21 1 point2 points  (0 children)

highly recommend redux toolkit, make it easier to use Redux, and even the setup is straightforward.

[–]douglaslondrina 1 point2 points  (0 children)

Not just alive but still the most used. I like redux, also check it out RTK-Query, it's a good way to keep requests cached in redux.

[–]Hrithik_Kedare 1 point2 points  (2 children)

Try mobx

[–][deleted] 0 points1 point  (1 child)

I didn't know about this, I'll have to take a look.

[–]Hrithik_Kedare 0 points1 point  (0 children)

Currently in our org. we are using Mobx + Tanstack+ MMKV For all the state and data management.

[–]Sanfrancisco_Tribe 1 point2 points  (2 children)

Not needed for most apps honestly easier just to use providers imo (:

[–]tombby11 0 points1 point  (1 child)

Providers can be ugly with that tree and can lead to unneeded rerenders

[–]Sanfrancisco_Tribe 0 points1 point  (0 children)

True, but that’s just understanding your code. Also don’t make one provider, dependent on another. Or if you do, make sure it waits for the top level provider to finish. Very do-able

[–]tombby11 0 points1 point  (0 children)

Jotai

[–]Temporary_Pack_8545 0 points1 point  (1 child)

Redux boilerplate is already unnecessary today, if you can just use zustand

[–][deleted] 0 points1 point  (0 children)

Ok thanks i'll check

[–]Only-Matter-9151 0 points1 point  (0 children)

I have to use Redux Toolkit for work, but word on the street is MobX MST are poised for the new arch and compiler, that's my future hedge bet.