Vision
The goal of ReactiveLists
is to provide a React-like API for UITableView
and UICollectionView
. It is currently in use across large parts of the PlanGrid iOS app.
The APIs provided by ReactiveLists
aim to be declarative, therefore they are significantly different from the UIKit
APIs that favor providing data via the delegate pattern. From the React repo:
React is a JavaScript library for building user interfaces.
[…]
- Declarative: React makes it painless to create interactive UIs. Design simple views for each state in your application, and React will efficiently update and render just the right components when your data changes. Declarative views make your code more predictable, simpler to understand, and easier to debug.
ReactiveLists
provides automated diffing. This means that whenever your application data changes, you only need to map that new data to a new view model to update the UI.
Anything other than providing declarative APIs on top of existing UITableView
and UICollectionView
APIs is currently considered out of scope.