Skip to content

[EPIC] Improve user experience and app responsiveness. #31459

Open
0 of 3 issues completed
Open
@sethkfman

Description

@sethkfman

What is this about?

Extension codebase is presently on React v16.12.0 , which according to npmjs is 7 years old. React v18 introduces features like concurrent rendering and automatic batching which lead to smoother and more responsive user interactions, thus directly enhancing the overall user experience.

React v18 introduces new hooks and improved suspense, making it easier to manage asynchronous operations and state transitions, thereby improving code maintainability and contributor velocity. Using React v18 specific APIs in design system components would enable better sharing across Extension and Portfolio.

React19 has a standout addition is the experimental React Compiler, which promises to significantly boost performance by automatically optimizing component rendering. The new Actions API simplifies data mutations and form handling, while full support for server components enhances server-side rendering capabilities. React 19 also introduces enhanced hooks like useFormStatus and useActionState, improving state management and form interactions. Asset loading has been optimized for smoother page transitions, and there are numerous other improvements including better error reporting, support for asynchronous scripts, and simplified ref handling. These updates collectively aim to enhance developer productivity, application performance, and user experience, making the upgrade to React 19 a compelling option for many projects.

Work encompassed:

  • Upgrade React to v17
  • Upgrade React to v18
    • React Router Upgrade may be required
  • Upgrade React to v19 (stretch goal)

Scenario

No response

Design

No response

Technical Details

No response

Threat Modeling Framework

No response

Acceptance Criteria

No response

Stakeholder review needed before the work gets merged

  • Engineering (needed in most cases)
  • Design
  • Product
  • QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
  • Security
  • Legal
  • Marketing
  • Management (please specify)
  • Other (please specify)

References

No response

Sub-issues

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions