Data layer: services, repositories, caching
How data reaches the app: services talk to the outside world, the repository acts as the source of truth, and caching and offline decisions are made in one place. Every "dirty" detail stays in this layer.
⬜⬜⬜⬜
1. Services: the only contact with the outside world
dataservicenetworkinghttp
2. Repository implementation: the source of truth
datarepositorycaching
3. Caching, offline and multiple sources
dataoffline-firstcachingsync
4. Two implementations: remote, local and fake (flavors)
datatestingflavorsriverpod