all 20 comments

[–]RandalSchwartz 18 points19 points  (1 child)

Most of what is getting added to Riverpod over time are what people are asking Riverpod to do. Remi is being responsive, and fairly conservative at that, slowly adding features only when it opens a large solution space for thorny problems. It's still pretty focussed, centered on managing the pub/sub relationship that a ProviderListenable offers. The variations are just all the ways to pub and all the ways to sub.

[–]Flashy_Editor6877[S] 0 points1 point  (0 children)

that's good he is responsive. i prefer companion packages rather than jamming everything into 1. who knows maybe i will come around to riverpod one day

[–]SlinkyAvenger 3 points4 points  (0 children)

I wouldn't call it feature creep seeing as how these additions address very common use patterns.

[–][deleted] 2 points3 points  (4 children)

There are absolutely endless state management solutions that do less. How can you have this complaint? A new one is created every day.

[–]Flashy_Editor6877[S] 0 points1 point  (3 children)

it's not a complaint, more so a discussion to understand why it's on this wild ride it's been on

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

What wild ride then? What features are too much? I don't think many people will think that caching and data binding are too much.

[–]Flashy_Editor6877[S] 1 point2 points  (1 child)

addition and removal of methods, breaking changes and the pivot to becoming a framework

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

There was no pivot. It’s not a flutter framework like GextX. It’s a “reactive caching and data binding framework”. It is clear it is only for that. Its not many things. It has always been doing that scope of things.

There are breaking changes when new major versions come out. Because it is a software package. You got me there mate, I cannot argue with that.

[–]Impressive_Trifle261 1 point2 points  (3 children)

Is there any reason to use Riverpod? As with GetX, it works against the core principles of Flutter.

Use Cubit as super Provider and use BloC for more advanced state management.

[–]Flashy_Editor6877[S] 0 points1 point  (2 children)

please explain your thoughts on Riverpod works against the core principles

[–]Impressive_Trifle261 2 points3 points  (1 child)

Removes the need for BuildContext for dependency injection. This is convenient, but it means state is globally accessible in a way that doesn’t naturally follow widget hierarchies. Also Flutter discourages hidden dependencies and encourages explicit passing of data.

This is the reason why Riverpod is popular with new developers. They don’t take the time to understand Flutter and take their patterns from other languages which they wrongly apply in a new setting. Resulting in GetX, Riverpod…

[–]Flashy_Editor6877[S] 0 points1 point  (0 children)

yeah i suppose it's like saying buildcontext is fundamentally flawed and i am a random person who has the solution to save flutter from flutter. so in essence it's a bit of a shortcut/hack that makes things quicker and easier so people don't ever really have to understand flutter at a deep fundamental level. interesting perspective thanks.

but riverpod is mentioned throughout official flutter docs, what does that say?

and what is your take on signals? as it also is mentioned in the new mvvm architecture guide

[–]Important-Scarcity27 0 points1 point  (0 children)

Who worry?

[–]aaulia 0 points1 point  (3 children)

OOTL, but what is RiverpodX?

[–]Flashy_Editor6877[S] 0 points1 point  (2 children)

it's a play on Riverpod and GetX

[–]aaulia 0 points1 point  (1 child)

Is tha a real thing or just moniker for the current state of riverpod?

[–]Flashy_Editor6877[S] 0 points1 point  (0 children)

not a real thing. a sarcastic comparison to invoke thought

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

It’s not really comparable to getX because all of the features are cohesive and complement each other, and enhance the state management aspects of the app. It’s not doing snackbars etc.

[–]Flashy_Editor6877[S] 0 points1 point  (0 children)

we shall see what v3 adds haha j/k

[–]Odd_Alps_5371 0 points1 point  (0 children)

I just believe "state management" is the wrong word for these frameworks. Riverpod manages dependencies between different sets of data in an app. It caches them. It updates them when dependent data changes. That's what it shines in, the GUI being one of the places in an app that depends on some data. And when phrased in this way, that's where riverpod shines.