Welcome back to the 3rd part of the Flutter YouTube Search tutorial course. In the previous part we’ve created a data source which acts as an interface between the raw JSON data we get from the HTTP client and our Built Value classes. Data source, however, is a fairly low level class which would be cumbersome to put into a BLoC. We need to move up the ladder of abstraction.
For that we’re going to create a repository. Repositories can combine data from multiple sources or, as in our case, make the data easier to get to. We can accomplish this simplification by preparing a nice way for data pagination.