Skip to content

Commit c6c1402

Browse files
Merge pull request #1 from dubalol/readme-updates
Readme updates
2 parents 0935511 + 38cadd7 commit c6c1402

File tree

9 files changed

+121
-42
lines changed

9 files changed

+121
-42
lines changed

demo.gif

-1.25 MB
Loading

package.json

+5-1
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,17 @@
2020
"url": "https://github.com/oslabs-beta/reactime"
2121
},
2222
"contributors": [
23+
"Abaas Khorrami",
2324
"Andy Wong",
2425
"Bryan Lee",
2526
"Chris Flannery",
2627
"David Chai",
28+
"Ergi Shehu",
2729
"Josh Kim",
30+
"Joshua Howard",
2831
"Prasanna Malla",
2932
"Rajeeb Banstola",
33+
"Raymond Kwan",
3034
"Rocky Lin",
3135
"Ruth Anam",
3236
"Ryan Dang",
@@ -80,4 +84,4 @@
8084
"react-router-dom": "^5.0.1",
8185
"react-select": "^3.0.4"
8286
}
83-
}
87+
}

package/demo.gif

-1.25 MB
Loading

package/index.d.ts

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// Type definitions for reactime v3.1
2+
// Project: <https://github.com/open-source-labs/reactime>
3+
// Definitions by: Abaas Khorrami <https://github.com/dubalol>
4+
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
5+
6+
/**
7+
* The 'reactime' module has one export:
8+
* --> the async @function returned from linkFiber.js
9+
* @param {container} --> the div element corresponding to your root container
10+
* @returns {void} --> no return value
11+
*
12+
* Reactime contributors:
13+
* Abaas Khorrami
14+
* Andy Wond
15+
* Bryan Lee
16+
* Chris Flannery
17+
* David Chai
18+
* Ergi Shehu
19+
* Joshua Howard
20+
* Josh Kim
21+
* Prasanna Malla
22+
* Rajeeb Banstola
23+
* Rocky Lin
24+
* Ruth Anam
25+
* Ryan Dang
26+
* Sierra Swaby
27+
* Yujin Kang
28+
*
29+
*
30+
* NOTE: TypeScript support is in beta and still experimental.
31+
*
32+
*/
33+
34+
declare module "reactime" {
35+
function linkFiber(
36+
container: HTMLElement,
37+
): void;
38+
export = linkFiber;
39+
}

package/package.json

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "reactime",
3-
"version": "2.0.9",
3+
"version": "3.1.0",
44
"description": "A library that helps debug React by memorizing the state of components with every render.",
55
"main": "index.js",
66
"repository": {
@@ -10,6 +10,7 @@
1010
"scripts": {
1111
"test": "echo \"Error: no test specified\""
1212
},
13+
"types": "./index.d.ts",
1314
"peerDependencies": {
1415
"react": "~16.0.0",
1516
"react-dom": "~16.0.0"
@@ -24,13 +25,17 @@
2425
"react devtool"
2526
],
2627
"contributors": [
28+
"Abaas Khorrami",
2729
"Andy Wong",
2830
"Bryan Lee",
2931
"Chris Flannery",
3032
"David Chai",
33+
"Ergi Shehu",
3134
"Josh Kim",
35+
"Joshua Howard",
3236
"Prasanna Malla",
3337
"Rajeeb Banstola",
38+
"Raymond Kwan",
3439
"Rocky Lin",
3540
"Ruth Anam",
3641
"Ryan Dang",

package/readme.md

+42-24
Original file line numberDiff line numberDiff line change
@@ -4,37 +4,33 @@
44

55
<h1 align="center">State Debugger for React</h1>
66

7-
[![GitHub](https://img.shields.io/github/license/oslabs-beta/reactime)](https://github.com/oslabs-beta/reactime)
8-
[![Build Status](https://travis-ci.com/oslabs-beta/reactime.svg?branch=master)](https://travis-ci.com/oslabs-beta/reactime)
9-
[![npm version](https://badge.fury.io/js/reactime.svg)](http://badge.fury.io/js/reactime)
10-
[![Dependencies](https://david-dm.org/oslabs-beta/reactime.svg)](https://david-dm.org/oslabs-beta/reactime#info=dependencies)
11-
[![DevDependencies](https://david-dm.org/oslabs-beta/reactime/dev-status.svg)](https://david-dm.org/oslabs-beta/reactime?type=dev)
12-
[![Vulnerabilities](https://snyk.io/test/github/oslabs-beta/reactime/badge.svg)](https://snyk.io/test/github/oslabs-beta/reactime)
7+
[![GitHub](https://img.shields.io/github/license/oslabs-beta/reactime)](https://github.com/oslabs-beta/reactime) [![Build Status](https://travis-ci.com/oslabs-beta/reactime.svg?branch=master)](https://travis-ci.com/oslabs-beta/reactime) [![npm version](https://badge.fury.io/js/reactime.svg)](http://badge.fury.io/js/reactime) [![Dependencies](https://david-dm.org/oslabs-beta/reactime.svg)](https://david-dm.org/oslabs-beta/reactime#info=dependencies) [![DevDependencies](https://david-dm.org/oslabs-beta/reactime/dev-status.svg)](https://david-dm.org/oslabs-beta/reactime?type=dev) [![Vulnerabilities](https://snyk.io/test/github/oslabs-beta/reactime/badge.svg)](https://snyk.io/test/github/oslabs-beta/reactime)
138

14-
<p align="center">
15-
<a href="https://nodei.co/npm/reactime/"><img src="https://nodei.co/npm/reactime.png"></a>
169

17-
<img src="demo.gif" alt="Demo of Reactime" style="width: 55%">
18-
</p>
10+
![demo](./demo.gif)
11+
1912

20-
Reactime is a debugging tool for React developers. It records state whenever it is changed and allows the user to jump to any previously recorded state.
2113

22-
This dev tool is for React apps using stateful components and prop drilling, and has beta support for Context API, conditional state routing, Hooks (useState & useEffect) and functional components.
14+
Reactime is a debugging tool for React developers. It records state whenever it is changed and allows the user to jump to any previously recorded state.
2315

24-
One thing to note is that this library does not work well when mixing React with direct DOM manipulation.
16+
This tool is for React apps using stateful components and prop drilling, and has beta support for Context API, conditional state routing, Hooks (useState, useEffect) and functional components.
2517

26-
Two parts are needed for this tool to function. The [**chrome extension**](https://chrome.google.com/webstore/detail/react-time-travel/cgibknllccemdnfhfpmjhffpjfeidjga) must be installed, and the [**NPM package**](https://www.npmjs.com/package/reactime) must be installed and used in the React code.
18+
The latest release extends the core functionality by including support for TypeScript applications, improving the user experience through more declarative titles in the actions panel, and extending support for components with conditional state fields. The testing suite has also been expanded with the inclusion of a Sandbox utility to aid future expansion as well as additional E2E and integration tests with Puppeteer and React Testing Library.
2719

28-
After successfully installing the chrome extension, you can test Reactime functionalities in the demo repositories below.
20+
After installing the Reactime, you can test its functionalities in the following demo repositories:
2921

30-
- [Calculator](http://reactime-demo1.us-east-1.elasticbeanstalk.com)
22+
- [Calculator](https://joshua0308.github.io/calculator/)
3123
- [Bitcoin Price Index](http://reactime-demo2.us-east-1.elasticbeanstalk.com)
3224

33-
## Installing
25+
Reactime was nominated for the Productivity Booster award at [React Open Source Awards 2020](https://osawards.com/react/)!
26+
27+
## Installation
3428

35-
1. Download the [extension](https://chrome.google.com/webstore/detail/reactime/cgibknllccemdnfhfpmjhffpjfeidjga) from Chrome Web Store.
29+
Two parts are required for this tool to function: a [**Chrome extension**](https://chrome.google.com/webstore/detail/react-time-travel/cgibknllccemdnfhfpmjhffpjfeidjga) and an [**NPM package**](https://www.npmjs.com/package/reactime).
3630

37-
2. Install the [npm package](https://www.npmjs.com/package/reactime) in your code.
31+
1. Install the Reactime [extension](https://chrome.google.com/webstore/detail/reactime/cgibknllccemdnfhfpmjhffpjfeidjga) from Chrome Web Store. Alternatively, use `src/extension/build/build.zip` for manual installation in [Developer mode](https://developer.chrome.com/extensions/faq#faq-dev-01). Turn on 'Allow access to file URLs' in extension details page if testing locally.
32+
33+
2. Install the [NPM package](https://www.npmjs.com/package/reactime) in your application's root directory.
3834

3935
```
4036
npm i reactime
@@ -43,21 +39,31 @@ npm i reactime
4339
3. Call the library method on your root container after rendering your App.
4440

4541
```
46-
const reactime = require('reactime');
42+
import reactime from 'reactime';
4743
4844
const rootContainer = document.getElementById('root');
4945
ReactDOM.render(<App />, rootContainer);
5046
5147
reactime(rootContainer);
5248
```
5349

54-
4. Done! That's all you have to do to link your React project to our library.
50+
4. For experimental concurrent mode support.
51+
52+
```
53+
import reactime from 'reactime';
54+
55+
const rootContainer = ReactDOM.createRoot(document.getElementById('root'));
56+
rootContainer.render(<App />);
57+
reactime(rootContainer);
58+
```
59+
60+
5. Done! That's all you have to do to link your React project to our library.
5561

5662
## How to Use
5763

58-
After installing both the Chrome extension and the npm package, just open up your project in the browser.
64+
After installing both the Chrome extension and the NPM package, just open up your project in the browser.
5965

60-
Then open up your Chrome DevTools. There'll be a new tab called Reactime.
66+
Then open up your Chrome DevTools and navigate to the Reactime tab.
6167

6268
## Features
6369

@@ -73,7 +79,11 @@ You can click on a snapshot to view your app's state. State can be visualized in
7379

7480
Jumping is the most important feature of all. It allows you to jump to any previous recorded snapshots. Hitting the jump button on any snapshot will change the DOM by setting their state.
7581

76-
### And Much More
82+
### TypeScript Support
83+
84+
Reactime offers beta support for TypeScript applications using stateful class components and functional components with useState hooks. Further testing and development is required for custom hooks, Context API, and Concurrent Mode.
85+
86+
### Additional Features
7787

7888
- multiple tree graph branches depicting state changes
7989
- tree graph hover functionality to view state changes
@@ -85,6 +95,9 @@ Jumping is the most important feature of all. It allows you to jump to any previ
8595
- a lock button to freeze the DOM in place. setState will lose all functionality while the extension is locked
8696
- a persist button to keep snapshots upon refresh (handy when changing code and debugging)
8797
- export/import the current snapshots in memory
98+
- declarative titles in the actions panel
99+
- extended support for components with conditional state fields
100+
- a Sandbox utility to aid future expansion
88101

89102
## Authors
90103

@@ -100,7 +113,12 @@ Jumping is the most important feature of all. It allows you to jump to any previ
100113
- **Rajeeb Banstola** - [@rajeebthegreat](https://github.com/rajeebthegreat)
101114
- **Prasanna Malla** - [@prasmalla](https://github.com/prasmalla)
102115
- **Rocky Lin** - [@rocky9413](https://github.com/rocky9413)
116+
- **Abaas Khorrami** - [@dubalol](https://github.com/dubalol)
117+
- **Ergi Shehu** - [@Ergi516](https://github.com/ergi516)
118+
- **Raymond Kwan** - [@rkwn](https://github.com/rkwn)
119+
- **Joshua Howard** - [@Joshua-Howard](https://github.com/joshua-howard)
103120

104121
## License
105122

106123
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
124+

readme.md

+28-15
Original file line numberDiff line numberDiff line change
@@ -6,30 +6,31 @@
66

77
[![GitHub](https://img.shields.io/github/license/oslabs-beta/reactime)](https://github.com/oslabs-beta/reactime) [![Build Status](https://travis-ci.com/oslabs-beta/reactime.svg?branch=master)](https://travis-ci.com/oslabs-beta/reactime) [![npm version](https://badge.fury.io/js/reactime.svg)](http://badge.fury.io/js/reactime) [![Dependencies](https://david-dm.org/oslabs-beta/reactime.svg)](https://david-dm.org/oslabs-beta/reactime#info=dependencies) [![DevDependencies](https://david-dm.org/oslabs-beta/reactime/dev-status.svg)](https://david-dm.org/oslabs-beta/reactime?type=dev) [![Vulnerabilities](https://snyk.io/test/github/oslabs-beta/reactime/badge.svg)](https://snyk.io/test/github/oslabs-beta/reactime)
88

9-
<p align="center">
10-
<a href="https://nodei.co/npm/reactime/"><img src="https://nodei.co/npm/reactime.png"></a>
119

12-
<img src="demo.gif" alt="Demo of Reactime" style="width: 55%">
13-
</p>
10+
![demo](./demo.gif)
1411

15-
Reactime is a debugging tool for React developers. It records state whenever it is changed and allows the user to jump to any previously recorded state.
1612

17-
This dev tool is for React apps using stateful components and prop drilling, and has beta support for Context API, conditional state routing, Hooks (useState, useEffect) and functional components.
1813

19-
One thing to note is that this library does not work well when mixing React with direct DOM manipulation.
14+
Reactime is a debugging tool for React developers. It records state whenever it is changed and allows the user to jump to any previously recorded state.
15+
16+
This tool is for React apps using stateful components and prop drilling, and has beta support for Context API, conditional state routing, Hooks (useState, useEffect) and functional components.
2017

21-
Two parts are needed for this tool to function. The [**chrome extension**](https://chrome.google.com/webstore/detail/react-time-travel/cgibknllccemdnfhfpmjhffpjfeidjga) must be installed, and the [**NPM package**](https://www.npmjs.com/package/reactime) must be installed and used in the React code. You can also download [**zipped version**](build.zip) of the chrome extension and install it in [Developer mode](https://developer.chrome.com/extensions/faq#faq-dev-01) and turn on 'Allow access to file URLs' in extension details page if testing locally.
18+
The latest release extends the core functionality by including support for TypeScript applications, improving the user experience through more declarative titles in the actions panel, and extending support for components with conditional state fields. The testing suite has also been expanded with the inclusion of a Sandbox utility to aid future expansion as well as additional E2E and integration tests with Puppeteer and React Testing Library.
2219

23-
After successfully installing the chrome extension, you can test Reactime functionalities in the demo repositories below.
20+
After installing the Reactime, you can test its functionalities in the following demo repositories:
2421

2522
- [Calculator](https://joshua0308.github.io/calculator/)
2623
- [Bitcoin Price Index](http://reactime-demo2.us-east-1.elasticbeanstalk.com)
2724

28-
## Installing
25+
Reactime was nominated for the Productivity Booster award at [React Open Source Awards 2020](https://osawards.com/react/)!
2926

30-
1. Download the [extension](https://chrome.google.com/webstore/detail/reactime/cgibknllccemdnfhfpmjhffpjfeidjga) from Chrome Web Store.
27+
## Installation
3128

32-
2. Install the [npm package](https://www.npmjs.com/package/reactime) in your code.
29+
Two parts are required for this tool to function: a [**Chrome extension**](https://chrome.google.com/webstore/detail/react-time-travel/cgibknllccemdnfhfpmjhffpjfeidjga) and an [**NPM package**](https://www.npmjs.com/package/reactime).
30+
31+
1. Install the Reactime [extension](https://chrome.google.com/webstore/detail/reactime/cgibknllccemdnfhfpmjhffpjfeidjga) from Chrome Web Store. Alternatively, use `src/extension/build/build.zip` for manual installation in [Developer mode](https://developer.chrome.com/extensions/faq#faq-dev-01). Turn on 'Allow access to file URLs' in extension details page if testing locally.
32+
33+
2. Install the [NPM package](https://www.npmjs.com/package/reactime) in your application's root directory.
3334

3435
```
3536
npm i reactime
@@ -60,9 +61,9 @@ reactime(rootContainer);
6061

6162
## How to Use
6263

63-
After installing both the Chrome extension and the npm package, just open up your project in the browser.
64+
After installing both the Chrome extension and the NPM package, just open up your project in the browser.
6465

65-
Then open up your Chrome DevTools. There'll be a new tab called Reactime.
66+
Then open up your Chrome DevTools and navigate to the Reactime tab.
6667

6768
## Features
6869

@@ -78,7 +79,11 @@ You can click on a snapshot to view your app's state. State can be visualized in
7879

7980
Jumping is the most important feature of all. It allows you to jump to any previous recorded snapshots. Hitting the jump button on any snapshot will change the DOM by setting their state.
8081

81-
### And Much More
82+
### TypeScript Support
83+
84+
Reactime offers beta support for TypeScript applications using stateful class components and functional components with useState hooks. Further testing and development is required for custom hooks, Context API, and Concurrent Mode.
85+
86+
### Additional Features
8287

8388
- multiple tree graph branches depicting state changes
8489
- tree graph hover functionality to view state changes
@@ -90,6 +95,9 @@ Jumping is the most important feature of all. It allows you to jump to any previ
9095
- a lock button to freeze the DOM in place. setState will lose all functionality while the extension is locked
9196
- a persist button to keep snapshots upon refresh (handy when changing code and debugging)
9297
- export/import the current snapshots in memory
98+
- declarative titles in the actions panel
99+
- extended support for components with conditional state fields
100+
- a Sandbox utility to aid future expansion
93101

94102
## Authors
95103

@@ -105,7 +113,12 @@ Jumping is the most important feature of all. It allows you to jump to any previ
105113
- **Rajeeb Banstola** - [@rajeebthegreat](https://github.com/rajeebthegreat)
106114
- **Prasanna Malla** - [@prasmalla](https://github.com/prasmalla)
107115
- **Rocky Lin** - [@rocky9413](https://github.com/rocky9413)
116+
- **Abaas Khorrami** - [@dubalol](https://github.com/dubalol)
117+
- **Ergi Shehu** - [@Ergi516](https://github.com/ergi516)
118+
- **Raymond Kwan** - [@rkwn](https://github.com/rkwn)
119+
- **Joshua Howard** - [@Joshua-Howard](https://github.com/joshua-howard)
108120

109121
## License
110122

111123
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
124+

src/extension/build/build.zip

7.65 KB
Binary file not shown.

src/extension/build/manifest.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "Reactime",
3-
"version": "3.2",
3+
"version": "3.3",
44
"devtools_page": "devtools.html",
55
"description": "A Chrome extension that helps debug React applications by memorizing the state of components with every render.",
66
"manifest_version": 2,

0 commit comments

Comments
 (0)