# What changed in @visx/responsive

> 6 changes in @visx/responsive 3 to 4 from its official release notes, upgrade guides and advisories: 2 breaking, 1 new APIs and options. Each one cited. Sources checked 2026-10-25. HTML: https://unstale.sh/npm/@visx/responsive/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @visx/responsive 4

### Breaking changes

- React 18 or 19 is required. (4.0.0) — [release notes](https://github.com/airbnb/visx/releases/tag/v4.0.0), [upgrade guide](https://github.com/airbnb/visx/blob/HEAD/MIGRATION.md)

### New APIs and options

- useParentSize supports a custom ref, allowing developers to provide their own ref. (4.0.0) — [release notes](https://github.com/airbnb/visx/releases/tag/v4.0.0)

### Behavior and default changes

- @types/react becomes an optional peer dependency, so consumers can choose whether to install it. (4.0.0) — [release notes](https://github.com/airbnb/visx/releases/tag/v4.0.0)

### Fixes and other changes

- Prevents infinite height growth in flex and grid layouts. (4.0.0) — [release notes](https://github.com/airbnb/visx/releases/tag/v4.0.0)
- A callback ref fixes dimensions getting stuck at 0×0. (4.0.0) — [release notes](https://github.com/airbnb/visx/releases/tag/v4.0.0)

## @visx/responsive 3

### Breaking changes

- Using responsive components now requires ResizeObserver or a polyfill. (3.0.0) — [release notes](https://github.com/airbnb/visx/releases/tag/v3.0.0)
