---
package: react
version: "^19.0.0"
tier: core
decision: approved
date: 2026-05-14
deciders: [scaffolded]
adr: null
filter-results:
  license: MIT
  types: "@types/react"
  maintenance: active
  boundary-fit: pass
  shadow-check: pass
  eu-residency: n/a
  cve-scan: clean
  named-consumer: pass
verification-commands:
  - pnpm audit --audit-level=moderate
  - npm view react license
accepted-cves: []
---

## Filter: license

MIT — on the workspace allowlist.

## Filter: types

TypeScript types via `@types/react` (community-maintained but canonical; ships in sync with each React major).

## Filter: maintenance

Active. Maintained by Meta; v19 is the current stable major.

## Filter: boundary-fit

Core UI package. React is required for the component library; appropriate for `core-ui`. No boundary rule violation.

## Filter: shadow-check

React is already workspace-present in app packages. Same major version; no shadow.

## Filter: eu-residency

Client-side rendering library; no vendor data transmission. n/a.

## Filter: cve-scan

No advisories at adoption time.

## Filter: named-consumer

`core-ui` renders all atomic-design components (Button, Input, Label, FormField) as React components.

## Prompt: replaces

Nothing — React is already the UI framework in the workspace.

## Prompt: migration-cost-out

Impossible: React is the foundational UI library for this workspace.

## Prompt: alternatives-considered

React is workspace-locked as the UI framework. No alternative evaluated.
