Skip to main content

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.

  1. createTrackedSelector to create a hook for React Redux with state usage tracking
  2. 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.

benchmark result

See this for details.