Presentation layer and dependency injection
The domain and the data are in place — now the screen. How UI state is modelled, why a notifier is a view model, where errors and side effects are handled, what logic may stay in a widget, and how dependencies are wired.
⬜⬜⬜⬜⬜⬜
1. Modelling UI state: AsyncValue, a status enum, a sealed union
presentationriverpodfreezedstate
2. Notifier as view model: the presentation layer in Riverpod
presentationriverpodmvvm
3. Showing errors on screen: AsyncValue, retry, empty states
presentationerror-handlingriverpodux
4. The command pattern and side effects
presentationcommandriverpodux
5. The view's rules: what logic may stay in a widget
presentationflutterwidgets
6. DI: constructor injection, Riverpod and get_it compared
diriverpodget-itarchitecture