Exploring and learning more about the world of reactive programming using RxSwift, RxCocoa and the TMDB movies API. More features will be added gradually.
In a terminal window, cd into the root folder and run $pod install
to install
ContourProgressView
(a progress extension I've built), RxSwift
, RxCocoa
and KingFisher
.
The request is built using a RxCocoa
URLRequest
extension and is composed as follows:
- First the list of all available genres is fetched
- For each genre, the first 2 pages of movies are fetched and merged into 1 Observable
- After each movie batch arrives, it is added to the genre's
.movies
variable, while being alphabetically ordered by name. - A custom
rx
extension is created forContourProgressView
, making it adhere toUIBindingObserver
and bindable / drivable with data.
A slider (.rx extension
) is bound to the minimum year of the movie release, which acts as a filter.