Comparison with other projects
There are several projects to provide global state management. Let's compare with other projects.
Notes about similarities and differences
Here describes similarities and differences.
Pure React
As we saw in Quick Start, the way we use React Tracked's createContainer is pretty much the same as pure React with context and hooks.
The difference is our effortless render optimization with useTracked
.
React Redux
React Redux provides useSelector and it can be used to improve performance.
React Tracked can add automatic optimization with Proxies in two ways.
- createTrackedSelector to create a hook for React Redux with state usage tracking
- useSelectorWithTracking hook for selector with usage tracking
Reactive React Redux
Reactive React Redux
originally proposed useTrackedState
hook in advance of React Tracked.
It also uses bleeding edge techniques to experiment for React Redux ecosystem.
MobX React
MobX utilizes Proxies, so the technique in the implementation is similar. The easiness of the usage is similar too.
However, MobX is based on mutable states. Whereas React Tracked is based on immutable states like Pure React and React Redux.
Vue.js
Vue has nothing to do with React, but it utilizes Proxies. The spirit of the effortless render optimization can be similar to the easiness of Vue.
Benchmarks
We have done some benchmark tests.
See this for details.