56 results available
Sign in
Skills directory

react18-dep-compatibility

github

·

Last changed
Hardened

This skill has been hardened by Chainguard

Last changed

This version passed the hardening gate. Hardening applied 9 targeted changes and preserved all other text. Classified findings before hardening: 0. Classified findings closed: 0. Classified findings remaining: 0. Unclassified scanner findings remaining: 0. Review findings closed: 5. Review findings remaining: 7.


Open before hardening

None

Open after hardening

None


Expand
File
Group
Subtype
Severity
Status

No findings available

0 findings


SKILL.md

React Dependency Compatibility Matrix

Minimum versions required for React 18.3.1 and React 19 compatibility.

Use this skill whenever checking whether a dependency supports a target React version, resolving peer dependency conflicts, deciding whether to upgrade or use legacy-peer-deps, or assessing the risk of a react-router v5 to v6 migration.

Review this matrix before running npm install during a React upgrade and before accepting an npm dependency conflict resolution, especially where concurrent mode compatibility may be affected.

Core Upgrade Targets

PackageReact 17React 18.3.1 (min)React 19 (min)Notes

react

17.x

18.3.1

19.0.0

Pin exactly to 18.3.1

react-dom

17.x

18.3.1

19.0.0

Must match react version exactly

Testing Libraries

PackageReact 18 MinReact 19 MinNotes

@testing-library/react

14.0.0

16.0.0

@testing-library/jest-dom

6.0.0

6.0.0

v5 works but v6 has React 18 matcher updates

@testing-library/user-event

14.0.0

14.0.0

v13 is sync, v14 is async - API change required

jest

27.x

27.x

jest 27+ with jsdom 16+ for React 18

jest-environment-jsdom

27.x

27.x

Must match jest version

Apollo Client

PackageReact 18 MinReact 19 MinNotes

@apollo/client

3.8.0

3.11.0

graphql

15.x

16.x

Apollo 3.8+ peer requires graphql 15 or 16

Read references/apollo-details.md for concurrent mode issues and MockedProvider changes.

Emotion

PackageReact 18 MinReact 19 MinNotes

@emotion/react

11.10.0

11.13.0

11.10 adds React 18 concurrent mode support

@emotion/styled

11.10.0

11.13.0

Must match @emotion/react version

@emotion/cache

11.10.0

11.13.0

If used directly

React Router

PackageReact 18 MinReact 19 MinNotes

react-router-dom

v6.0.0

v6.8.0

v5 → v6 is a breaking migration - see details below

react-router-dom v5

5.3.4 (workaround)

❌ Not supported

See legacy peer deps note

react-router v5 → v6 is a SEPARATE migration sprint. Read references/router-migration.md.

Redux

PackageReact 18 MinReact 19 MinNotes

react-redux

8.0.0

9.0.0

v7 works on R18 legacy root only - breaks on concurrent mode

redux

4.x

5.x

Redux itself is framework-agnostic - react-redux version matters

@reduxjs/toolkit

1.9.0

2.0.0

RTK 1.9 tested against React 18

Other Common Packages

PackageReact 18 MinReact 19 MinNotes

react-query / @tanstack/react-query

4.0.0

5.0.0

v3 doesn't support concurrent mode

react-hook-form

7.0.0

7.43.0

v6 has concurrent mode issues

formik

2.2.9

2.4.0

v2.2.9 patched for React 18

react-select

5.0.0

5.8.0

v4 has peer dep conflicts with R18

react-datepicker

4.8.0

6.0.0

v4.8+ added React 18 support

react-dnd

16.0.0

16.0.0

v15 and below have R18 concurrent mode issues

prop-types

any

any

Standalone - unaffected by React version


Conflict Resolution Decision Tree

npm ls shows peer conflict for package X
         │
         ▼
Does package X have a version that supports React 18?
  YES → npm install X@[min-compatible-version]
  NO  ↓
         │
Is the package critical to the app?
  YES → last resort: --legacy-peer-deps (document why)
  NO  → consider removing the package

--legacy-peer-deps Rules

Only use --legacy-peer-deps when:

  • The package has no React 18 compatible release
  • The package is actively maintained (not abandoned)
  • The conflict is only a peer dep declaration mismatch (not actual API incompatibility)

Document every --legacy-peer-deps usage in a MIGRATION.md file explaining why it was necessary.

Install

Install with chainctl
chainctl skill install public/github/react18-dep-compatibility:latest
Get started with chainctl
View source

Harden your own skills

Bring Chainguard's hardening pipeline to your first-party skills — custom rulesets, automated remediation, full audit trail.

Provenance

Upstream sourcehttps://github.com/github/awesome-copilot
Upstream commit2201a49dd6f972ac4f685d03361d58c9c9206690
OCI reference

skills.chainreg.biz/public/github.com/github/skills/react18-dep-compatibility:latest

License

MIT

Files

HARDENING.md

LICENSE

SKILL.md

references/apollo-details.md

references/router-migration.md


The trusted source for open source

Talk to an expert
PrivacyTerms

Product

Chainguard ContainersChainguard LibrariesChainguard VMsChainguard OS PackagesChainguard ActionsChainguard Agent SkillsIntegrationsPricing
© 2026 Chainguard, Inc. All Rights Reserved.
Chainguard® and the Chainguard logo are registered trademarks of Chainguard, Inc. in the United States and/or other countries.
The other respective trademarks mentioned on this page are owned by the respective companies and use of them does not imply any affiliation or endorsement.