Skip to content

Commit 09d8a0e

Browse files
authored
Merge pull request #313 from oslabs-beta/main
Release Reactime version 20
2 parents 187b55a + 5b4d0b0 commit 09d8a0e

File tree

80 files changed

+511
-1696
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+511
-1696
lines changed

.babelrc

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
{
2-
"presets": ["airbnb", "@babel/preset-typescript"],
3-
"plugins": ["@emotion"]
2+
"presets": ["airbnb", "@babel/preset-typescript"]
43
}

README.fr.md

+16-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
<br>
3737

3838
<p align="center">
39-
<img src="./assets/new-reactime.gif" />
39+
<img src="./assets/v20/Overview.gif" />
4040
</p>
4141

4242
<p align="center">
@@ -124,6 +124,13 @@ Après avoir cloné ce référentiel, les développeurs peuvent simplement exéc
124124
- télécharger les snapshots actuels en mémoire
125125
- titres déclaratifs dans la barre latérale des actions
126126

127+
<h1>Quoi de neuf !</h1>
128+
Reactime 20.0 inclut plusieurs améliorations clés sous le capot pour améliorer les performances et résoudre les bogues existants, ainsi qu'une UX remaniée pour atteindre la compatibilité WCAG.
129+
130+
Nous avons résolu plusieurs bogues persistants, y compris un problème majeur qui faisait planter les applications utilisant Reactime lors de l'utilisation de la fonctionnalité de connexion ou de soumission. Dans le cadre de nos efforts pour améliorer les performances globales de Reactime, nous avons continué à implémenter TypeScript dans toute la base de code et créé de nouveaux tests avec React Testing Library. Nous avons également rendu les tests plus robustes, améliorant les tests existants et corrigeant les environnements de test défectueux. Enfin, nous avons mis à jour Reactime en supprimant certains codes et packages obsolètes, réduisant ainsi les erreurs de compilation.
131+
132+
Nous avons mis à jour l'UX, en recherchant la cohérence avec les directives pour l'accessibilité des contenus Web (WCAG). Plus précisément, nous avons amélioré la taille et la conception des éléments cibles dans Reactime et soigneusement choisi de nouveaux contrastes de couleurs.
133+
127134
## <b>En savoir plus</b>
128135

129136
- [Time-Travel State with Reactime](https://medium.com/better-programming/time-traveling-state-with-reactime-6-0-53fdc3ae2a20)
@@ -202,6 +209,14 @@ Après avoir cloné ce référentiel, les développeurs peuvent simplement exéc
202209
- **Ngoc Zwolinski** - [@ngoczwolinski](https://github.com/ngoczwolinski)
203210
- **Peter Lam** - [@dev-plam](https://github.com/dev-plam)
204211
- **Zachary Freeman** - [@zacharydfreeman](https://github.com/zacharydfreeman/)
212+
- **Jackie Yuan** - [@yuanjackie1](https://github.com/yuanjackie1)
213+
- **Jasmine Noor** - [@jasnoo](https://github.com/jasnoo)
214+
- **Minzo Kim** - [@minzo-kim](https://github.com/minzo-kim)
215+
- **Mark Teets** - [@MarkTeets](https://github.com/MarkTeets)
216+
- **Nick Huemmer** - [@NickHuemmer](https://github.com/ElDuke717)
217+
- **James McCollough** - [@j-mccoll](https://github.com/j-mccoll)
218+
- **Mike Bednarz** - [@mikebednarz](https://github.com/mikebednarz)
219+
- **Sergei Liubchenko** - [@sergeylvq](https://github.com/sergeylvq)
205220

206221
## <b>License </b>
207222

README.md

+13-18
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
<br>
2929

3030
<p align="center">
31-
<img src="./assets/v19/Overview.gif" />
31+
<img src="./assets/v20/Overview.gif" />
3232
</p>
3333

3434
<p align="center">
@@ -47,7 +47,7 @@ be viewed in Diff mode.
4747
<br>
4848

4949
<p align="center">
50-
<img src="./assets/v19/map.gif" />
50+
<img src="./assets/v20/map.gif" />
5151
</p>
5252
<br>
5353

@@ -60,10 +60,6 @@ name.
6060
<br>
6161
<br>
6262

63-
<!-- <p align="center">
64-
<img src="./assets/action-comparison.gif" />
65-
</p> -->
66-
6763
### 🔹 Components Comparison
6864

6965
When toggled to a specific snapshot, a visualization of the individual
@@ -73,11 +69,6 @@ each component upon hovering.
7369
<br>
7470
<br>
7571

76-
<p align="center">
77-
<img src="./assets/v19/performance.gif" />
78-
</p>
79-
<br>
80-
8172
### 🔹 Recording
8273

8374
Whenever state is changed (whenever setState, useState is called), this
@@ -87,7 +78,7 @@ snapshot will be displayed in Chrome DevTools under the Reactime panel.
8778
<br>
8879

8980
<p align="center">
90-
<img src="./assets/v19/history.gif" />
81+
<img src="./assets/v20/history.gif" />
9182
</p>
9283
<br>
9384

@@ -147,15 +138,15 @@ of the structure and interfaces of the codebase.
147138

148139
<h1>What's New!</h1>
149140

150-
<b>Reactime 19.0</b> comes with UI updates to enhance the developer's experience, as well as a much-needed revamping of the codebase to reflect current industry standards and better maintainability for future contributors.
141+
Reactime 20.0 includes several key improvements under the hood to improve performance and resolve existing bugs, as well as a revamped UX to achieve WCAG compatibility.
151142

152-
<i>UI Updates</i>
143+
<i>Under the Hood</i>
153144

154-
To handle displaying large amounts of data, we have changed how nested structures like objects and arrays are displayed to now be collapsible and scrollable. In addition, we've updated component information to include the necessary component "key" information, and data now also persists on hover, eliminating the need to leave the cursor in one place.
145+
We have resolved several persistent bugs, including a major issue that caused apps using Reactime to crash when using login or submit functionality. As part of our effort to improve Reactime performance overall, we have continued to implement TypeScript throughout the codebase and created new tests with React Testing Library. We have also made testing more robust, improving existing tests and fixing broken test environments. Lastly, we have upgraded Reactime by removing some deprecated code and packages, reducing compilation errors.
155146

156-
<i>Under the Hood</i>
147+
<i>Accessibility</i>
157148

158-
We are happy to say that we've migrated from Enzyme to React Testing Library to eliminate the need for the Enzyme adapter, converted from JavaScript to TypeScript to ensure type safety, and updated the traversal of the React Fiber Tree to accurately extract useState data for previously unsupported edge cases.
149+
We have updated the UX, seeking consistency with the Web Content Accessibility Guidelines (WCAG). Specifically, we have improved the size and design of target elements throughout Reactime and carefully chosen new color contrasts to ensure WCAG compatibility.
159150

160151
If you would like to read more about previous releases, click <a href="https://github.com/open-source-labs/reactime/releases">here!</a>
161152

@@ -231,7 +222,7 @@ Node v16.16.0, please use script 'npm run devlegacy' | 'npm run buildlegacy'
231222

232223
## <b>Read More</b>
233224

234-
- [It's time for Reactime 19.0!](linkhere)
225+
- [It's time for Reactime 20.0!](linkhere)
235226

236227
## <b>Authors</b>
237228

@@ -318,6 +309,10 @@ Node v16.16.0, please use script 'npm run devlegacy' | 'npm run buildlegacy'
318309
- **Jasmine Noor** - [@jasnoo](https://github.com/jasnoo)
319310
- **Minzo Kim** - [@minzo-kim](https://github.com/minzo-kim)
320311
- **Mark Teets** - [@MarkTeets](https://github.com/MarkTeets)
312+
- **Nick Huemmer** - [@NickHuemmer](https://github.com/ElDuke717)
313+
- **James McCollough** - [@j-mccoll](https://github.com/j-mccoll)
314+
- **Mike Bednarz** - [@mikebednarz](https://github.com/mikebednarz)
315+
- **Sergei Liubchenko** - [@sergeylvq](https://github.com/sergeylvq)
321316

322317
## <b>License </b>
323318

README.rus.md

+17-20
Original file line numberDiff line numberDiff line change
@@ -19,19 +19,20 @@
1919
<br>
2020

2121
<p align="center">
22-
<img src="./assets/new-reactime.gif" />
22+
<img src="./assets/v20/Overview.gif" />
2323
</p>
2424

25-
<b>Reactime 18.0</b> вводит ряд новых и улучшенных функций, направленных на оптимизацию производительности и улучшение совместимости.
26-
С поддержкой Next.js и Remix, увеличенной покрытия тестов (93% на бэкенде, необходимо больше на фронтенде) и структурных улучшений в кодовой базе.
27-
Кроме того, мы гордимся анонсом запуска нашего вновь переработанного веб-сайта, который служит центром для последних обновлений и информации о Reactime.
28-
Для помощи в отладке мы включили демонстрационные приложения для Next.js и Remix, что позволяет будущим итераторам тестировать и устранять ошибки с большей легкостью и эффективностью.
25+
<b>Reactime 20.0</b>
26+
27+
Reactime 20.0 включает в себя несколько ключевых улучшений для повышения производительности и устранения существующих ошибок, а также переработанный пользовательский интерфейс для обеспечения совместимости с WCAG.
28+
29+
Мы исправили несколько постоянных ошибок, в том числе серьезную проблему, которая приводила к сбою приложения, использующих Reactime, при использовании функций входа или отправки. Мы продолжили внедрять TypeScript в кодовую базу и создали новые тесты с библиотекой тестирования React. Мы также сделали тестирование более надежным, улучшив существующие тесты и исправив неработающие тесты. Наконец, мы обновили Reactime, удалив некоторый устаревший код и пакеты, уменьшив количество ошибок компиляции.
30+
31+
Мы обновили взаимодействие с пользователем, в соответствие с требованиями Руководства по доступности веб-контента (WCAG). В частности, мы улучшили размер и дизайн целевых элементов в Reactime и тщательно выбрали новые цветовые контрасты.
2932

3033
<b>Reactime</b> - расширение для дебаггинга/отладки React приложений. Оно создает снэпшоты при каждом изменении состояния (state) и позволяет пользованию прыгать на любое предыдущее состояние (state). 
3134
В настоящее время Reactime поддерживает React приложения с классовыми, функциональными компонентами, хуками и Context API.
3235

33-
В Reactime версии 7.0 отлажены баги предыдущих версий, улучшена визуализация данных отношений между компонентами. Также новая версия включает в себя расширенную документацию для разработчиков, которые хотят работать над приложением.
34-
3536
После загрузки Reactime вы можете протестировать его полную функциональность на любом вашем React приложении в режиме разработки (dev mode). В продакшен режиме вы можете только работать с картой компонентов.
3637

3738
## <b>Установка</b>
@@ -90,19 +91,6 @@ Reactime beta поддерживает приложения, написанны
9091

9192
После клонирования репозитория, вы можете использовать команду `npm run docs` в корневой папке, которая генерирует файл в браузере `/docs/index.html`. Это упростит знакомство с приложением и поможет вам ознакомиться со структурой и интерфейсом существующего кода.
9293

93-
### <b>Дополнительный функционал</b>
94-
95-
- identifying unnecessary re-renders
96-
- hover functionality to view tooltip details on state visualizations
97-
- ability to pan and zoom on state visualizations
98-
- a dropdown to support development of projects on multiple tabs
99-
- a slider to move through snapshots quickly
100-
- a play button to move through snapshots automatically
101-
- a lock button, which stops recording each snapshot
102-
- a persist button to keep snapshots upon refresh (handy when changing code and debugging)
103-
- download/upload the current snapshots in memory
104-
- declarative titles in the actions sidebar
105-
10694
## <b>Узнать больше о Reactime и React Fiber</b>
10795

10896
- [Time-Travel State with Reactime](https://medium.com/better-programming/time-traveling-state-with-reactime-6-0-53fdc3ae2a20)
@@ -111,6 +99,7 @@ Reactime beta поддерживает приложения, написанны
11199
- [Deep in Weeds with Reactime, Concurrent React_fiberRoot, and Browser History Caching](https://itnext.io/deep-in-the-weeds-with-reactime-concurrent-react-fiberroot-and-browser-history-caching-7ce9d7300abb)
112100

113101
## <b>Авторы</b>
102+
114103
- **Ben Margolius** - [@benmarg](https://github.com/benmarg)
115104
- **Eric Yun** - [@ericsngyun](https://github.com/ericsngyun)
116105
- **James Nghiem** - [@jemzir](https://github.com/jemzir)
@@ -180,6 +169,14 @@ Reactime beta поддерживает приложения, написанны
180169
- **Ngoc Zwolinski** - [@ngoczwolinski](https://github.com/ngoczwolinski)
181170
- **Peter Lam** - [@dev-plam](https://github.com/dev-plam)
182171
- **Zachary Freeman** - [@zacharydfreeman](https://github.com/zacharydfreeman/)
172+
- **Jackie Yuan** - [@yuanjackie1](https://github.com/yuanjackie1)
173+
- **Jasmine Noor** - [@jasnoo](https://github.com/jasnoo)
174+
- **Minzo Kim** - [@minzo-kim](https://github.com/minzo-kim)
175+
- **Mark Teets** - [@MarkTeets](https://github.com/MarkTeets)
176+
- **Nick Huemmer** - [@NickHuemmer](https://github.com/ElDuke717)
177+
- **James McCollough** - [@j-mccoll](https://github.com/j-mccoll)
178+
- **Mike Bednarz** - [@mikebednarz](https://github.com/mikebednarz)
179+
- **Sergei Liubchenko** - [@sergeylvq](https://github.com/sergeylvq)
183180

184181
## <b>License </b>
185182

assets/v19/Overview.gif

-2.45 MB
Binary file not shown.

assets/v19/history.gif

-719 KB
Binary file not shown.

assets/v19/map.gif

-1010 KB
Binary file not shown.

assets/v19/performance.gif

-1.29 MB
Binary file not shown.

assets/v19/tree-and-diff.gif

-830 KB
Binary file not shown.

assets/v20/Overview.gif

357 KB
Loading

assets/v20/history.gif

304 KB
Loading

assets/v20/map.gif

616 KB
Loading

demo-app-remix/server.js demo-app-remix/server.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ app.use(morgan("tiny"));
2828
app.all(
2929
"*",
3030
process.env.NODE_ENV === "development"
31-
? (req, res, next) => {
31+
? (req: any, res: any, next: any) => {
3232
purgeRequireCache();
3333

3434
return createRequestHandler({
@@ -41,7 +41,7 @@ app.all(
4141
mode: process.env.NODE_ENV,
4242
})
4343
);
44-
const port = process.env.PORT || 3003;
44+
const port: number | string = process.env.PORT || 3003;
4545

4646
app.listen(port, () => {
4747
console.log(`Express server listening on port ${port}`);

demo-app-remix/tsconfig.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"include": ["remix.env.d.ts", "**/*.ts", "**/*.tsx"],
2+
"include": ["remix.env.d.ts", "**/*.ts", "**/*.tsx", "server.ts"],
33
"compilerOptions": {
44
"lib": ["DOM", "DOM.Iterable", "ES2019"],
55
"isolatedModules": true,

demo-app/src/client/style.css

+31-9
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,18 @@
1+
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
2+
3+
:root {
4+
--primary-red-color: #F00008;
5+
--background-color1: #f6f6f6;
6+
--secondary-blue-color: #62d6fb;
7+
--fire-rose-red: #FF6569;
8+
--secondary-color: #6288fb;
9+
--text-color: #330002;
10+
}
111

212
body {
313
margin: 0;
4-
font-family: Arial, Helvetica, sans-serif;
5-
background-color: #FFF4F4;
14+
font-family: 'Lato', sans-serif;
15+
background-color: var(--background-color1);
616
}
717

818
h1, h2, h4 {
@@ -12,7 +22,19 @@ h1, h2, h4 {
1222
/* Navbar */
1323

1424
.nav {
15-
background-color: #FF6569;
25+
background-image: linear-gradient(
26+
0deg,
27+
hsl(358deg 100% 47%) 5%,
28+
hsl(359deg 90% 51%) 24%,
29+
hsl(360deg 91% 54%) 33%,
30+
hsl(360deg 93% 57%) 41%,
31+
hsl(360deg 94% 59%) 48%,
32+
hsl(360deg 95% 60%) 54%,
33+
hsl(359deg 97% 62%) 61%,
34+
hsl(359deg 98% 64%) 69%,
35+
hsl(359deg 99% 65%) 79%,
36+
hsl(358deg 100% 67%) 100%
37+
);
1638

1739
display: flex;
1840
justify-content: space-evenly;
@@ -75,7 +97,7 @@ h1, h2, h4 {
7597
}
7698

7799
.box {
78-
background-color: #62d6fb;
100+
background-color: var(--secondary-blue-color);
79101
border-style: solid;
80102
border-color: #ffffff;
81103
border-radius: 5px;
@@ -87,7 +109,7 @@ h1, h2, h4 {
87109
}
88110

89111
#reset {
90-
color: #FF6569;
112+
color: var(--primary-red-color);
91113
font-size: 1.5em;
92114

93115
background-color: #ffffff;
@@ -105,7 +127,7 @@ h1, h2, h4 {
105127

106128
#reset:hover {
107129
color: #ffffff;
108-
background-color: #FF6569
130+
background-color: var(--primary-red-color)
109131
}
110132

111133
/* Counter */
@@ -131,7 +153,7 @@ h1, h2, h4 {
131153
color: #ffffff;
132154
font-size: 1.5em;
133155

134-
background-color: #FF6569;
156+
background-color: var(--primary-red-color);
135157
border-style: solid;
136158
border-color: #ffffff;
137159
border-radius: 5px;
@@ -145,11 +167,11 @@ h1, h2, h4 {
145167
}
146168

147169
.increment:hover {
148-
background-color: #62d6fb;
170+
background-color: var(--secondary-blue-color);
149171
}
150172

151173
.hook-data-section {
152-
border: 2px solid #FF6569;
174+
border: 2px solid --primary-red-color;
153175
border-radius: 5px;
154176
margin: 10px 0;
155177
padding: 8px;

high-contrast-colors.md

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
## High Contrast Colors to Help with Color Blindness
2+
- Dark Blue (#000080)
3+
- Light Blue (#ADD8E6)
4+
- Dark Green (#006400)
5+
- Light Green (#90EE90)
6+
- Dark Red (#8B0000)
7+
- Light Red (#FFC0CB)
8+
- Dark Purple (#800080)
9+
- Light Purple (#BA55D3)
10+
- Dark Yellow (#FFD700)
11+
- Light Yellow (#FFFFE0)
12+
- Dark Orange (#FF8C00)
13+
- Light Orange (#FFA500)
14+
- Dark Brown (#8B4513)
15+
- Light Brown (#D2691E)
16+
- Dark Gray (#A9A9A9)
17+
- Light Gray (#D3D3D3)

package.json

+4-3
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
"Hien Nguyen",
5959
"Jack Crish",
6060
"Jackie Yuan",
61+
"James McCollough",
6162
"James Nghiem",
6263
"Jasmine Noor",
6364
"Joseph Park",
@@ -70,9 +71,11 @@
7071
"Lance Ziegler",
7172
"Lina Shin",
7273
"Mark Teets",
74+
"Mike Bednarz",
7375
"Minzo Kim",
7476
"Nathanael Wa Mwenze",
7577
"Ngoc Zwolinski",
78+
"Nick Huemmer",
7679
"Peter Lam",
7780
"Prasanna Malla",
7881
"Rajeeb Banstola",
@@ -81,6 +84,7 @@
8184
"Rocky Lin",
8285
"Ruth Anam",
8386
"Ryan Dang",
87+
"Sergei Liubchenko",
8488
"Sierra Swaby",
8589
"Tania Lind",
8690
"Viet Nguyen",
@@ -95,7 +99,6 @@
9599
"@babel/preset-env": "^7.12.7",
96100
"@babel/preset-react": "^7.12.7",
97101
"@babel/preset-typescript": "^7.21.5",
98-
"@emotion/babel-plugin": "^11.7.2",
99102
"@inrupt/jest-jsdom-polyfills": "^1.6.2",
100103
"@testing-library/jest-dom": "^4.2.4",
101104
"@testing-library/react": "^13.4.0",
@@ -152,8 +155,6 @@
152155
"webpack-cli": "^3.3.12"
153156
},
154157
"dependencies": {
155-
"@emotion/react": "^11.9.0",
156-
"@emotion/styled": "^11.8.1",
157158
"@fortawesome/fontawesome-free": "^5.15.1",
158159
"@fortawesome/fontawesome-svg-core": "^1.2.32",
159160
"@fortawesome/free-regular-svg-icons": "^5.15.1",

0 commit comments

Comments
 (0)