chore: address peer dependency warnings (React 19 + outdated packages)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 11
- Forks
- 26
- Avg merge
- 11h 58m
- Merged PRs (30d)
- 16
Description
## Description
Running `pnpm install` produces a large number of unmet peer dependency warnings. These are not currently breaking anything but indicate technical debt that could cause issues as dependencies are updated.
## Categories
### 1. React 19 incompatibility
Most dependencies still declare peer deps for React 16-18 but we're on React 19.2.1:
- `@livepeer/design-system@1.1.0` — expects `react@17.0.1`
- All `@radix-ui/*` packages — expect `react@^16.8 || ^17.0 || ^18.0`
- `@reach/dialog`, `@reach/tabs` — expect `react@^16.8.0 || 17.x`
- `qrcode.react`, `react-query`, `react-table`, `react-number-format`
### 2. Outdated packages
Some packages are significantly behind and should be evaluated for replacement:
- `react-truncate@2.4.0` — expects `react <= 16.x.x`
- `react-hook-form@3.29.4` — expects `react@^16.8.0` (current is v7+)
- `apollo-link@1.2.14` and `apollo-link-http@1.5.17` — expect `graphql@^0.11-^15` (we're on 16)
- `graphql-tools@8.3.20` — pulls in old `@apollo/client@3.7.17`
- `@modulz/radix-icons@4.0.0` — expects `react@^16.x || ^17.x`
### 3. Other mismatches
- `wagmi` → `@walletconnect` → `viem` → `abitype` expects `zod@^3 >=3.22.0` but found `4.1.12`
- `@reown/appkit` → `use-sync-external-store` expects React 16-18
- `@coinbase/cdp-sdk` → `@solana/rpc-subscriptions` expects `ws@^8.18.0` but found `7.5.10`
## Suggested approach
- Prioritize updating `@livepeer/design-system` to support React 19 (or add `pnpm.peerDependencyRules.allowedVersions` overrides as a short-term fix)
- Evaluate replacing `react-truncate`, `react-hook-form@3`, `apollo-link`, and `@modulz/radix-icons` with modern alternatives
- Consider removing `graphql-tools` if unused or upgrading to a version that doesn't pull in the old Apollo client
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by running `pnpm install` and reviewing the dependency declarations and peer-dependency warnings listed in this issue. Evaluate the named React, GraphQL, wallet, and supporting packages, then verify that the chosen upgrades, replacements, or peer-dependency rules remove the relevant warnings without breaking the project.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- graphql, react, typescript
- Domain
- build-system, tooling
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100