Officina UI

Peer dependencies

React 19 is required. Three TanStack libraries are optional and only needed by the specific components that build on them.

Required

PackageRange
react / react-dom^19.0.0

Optional

These are declared as optional peers: installing @officina/ui does not pull them in, and your package manager will not warn about them. You only need one if you render a component that builds on it.

PackageRangeNeeded by
@tanstack/react-table^8.21.0DataTable, DataGrid, ColumnsToggle
@tanstack/react-query^5.62.0AsyncSelect, the TanStack Query filter adapter
@tanstack/react-router^1.95.0TopProgressBar

Importing one of those components without its peer installed throws at render time rather than at build time, so install the peer alongside first use:

pnpm add @tanstack/react-table

Why they are peers

These libraries own state that belongs to your app, not to the component library. DataTable takes a table instance you construct, so it has to use the same copy of @tanstack/react-table your code does — bundling a second copy would give you two incompatible instances of the same types.

Everything else Officina UI needs is a regular dependency and comes with the install.

On this page