Provider is more of a DI framework. Infact, it can be easily used with Bloc to provide Bloc instances to your widgets.
Coupling Provider with ChangeNotifier is what can be a comparable solution to using Blocs. Honestly there’s not much to choose between the two as both are equally good. As far as why I chose Bloc instead of Provider with ChangeNotifier, there are two key reasons :
a. I’ve worked a lot with Rx and streams in the past so using Bloc made more sense to me.
b. There are lots of good tutorials/documentation available when it comes to using Bloc, Not so much for Provider. I’m sure that will change in future and we will see lot more people adopting/writing about it.
PS: I will probably refractor/rewrite this app in future to use Provider with ChangeNotifier pattern, just to see how the same app can be implemented using two different approaches. That should make for a really interesting challenge.
