You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+21-15Lines changed: 21 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,19 +2,25 @@
2
2
3
3
A React Custom renderer using Web Workers. All the Virtual DOM reconcilliations happen in a WebWorker thread. Only node updates are sent over to the UI thread, result in a much more responsive UI.
4
4
5
-
An existing React application can leverage WebWorkers using this library with minimal change. Look at the usage section for details.
5
+
An existing React application can leverage WebWorkers using this library with minimal change. Look at the usage section for details.
6
+
7
+
**This is the React 15.x experimental version, see master branch if you're running React 0.14.**
6
8
7
9
## Demo
8
10
9
-
The demo is hosted at [http://web-perf.github.io/react-worker-dom/](http://web-perf.github.io/react-worker-dom/). To run a local version of the demo,
11
+
The demo is hosted at [http://web-perf.github.io/react-worker-dom/](http://web-perf.github.io/react-worker-dom/). To run a local version of the demo,
10
12
11
13
- Clone the repo run `npm install` to install all dependencies.
12
14
- Build the app using `npm run demo`
13
15
- Open `http://localhost:8080/test/dbmonster/` to view the demo app, or `http://localhost:8080/test/todo` for the todo app.
14
-
- Tweak the params in the URL to change to use web workers, increase number of components, etc.
16
+
- Tweak the params in the URL to change to use web workers, increase number of components, etc.
15
17
16
18
## Usage
17
19
20
+
```bash
21
+
npm install --save react-worker-dom
22
+
```
23
+
18
24
### A typical React application
19
25
20
26
A typical React application would looks something like the following.
Look at `test\dbmonster` and `test\todoapp` directory for the examples.
55
+
Look at `test\dbmonster` and `test\todoapp` directory for the examples.
51
56
52
57
## Testing Performance
53
58
@@ -56,11 +61,12 @@ To manually look at frame rates, load the dbmonster [demo pages](http://web-perf
56
61
To automatically collect frame rates and compare it with the normal version
57
62
- Run `npm run demo` to start the server and host the web pages
58
63
- Run `npm run perf chrome worker` to test frame rates for various rows in chrome in a Web Worker. Instead of `chrome`, you could use `android`, and instead of `worker`, you could use `normal` to test the other combinations.
59
-
- The frame rates are available in `_dbmonster.json` file, for each row count.
64
+
- The frame rates are available in `_dbmonster.json` file, for each row count.
60
65
61
66
## Roadmap
62
-
Here are the things that need to be done next.
67
+
Here are the things that need to be done next.
63
68
64
69
- Add support for form elements like <input>, <select>, etc.
65
-
- Support event utilities that enable things like autofocus, etc.
66
-
- Enable preventDefault() semantics in events.
70
+
- Support event utilities that enable things like autofocus, etc.
0 commit comments