---
package: "@trpc/client"
version: "^11.0.0"
tier: core
decision: approved
date: 2026-05-14
deciders: [scaffolded]
adr: null
filter-results:
  license: MIT
  types: native
  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 @trpc/client license
accepted-cves: []
---

## Filter: license

MIT — on the workspace allowlist.

## Filter: types

Ships first-party TypeScript types; end-to-end type safety is the library's primary value.

## Filter: maintenance

Active. Maintained by the tRPC team; v11 is the current stable line.

## Filter: boundary-fit

Core package. `@trpc/client` is the companion to `@trpc/server` (present in `core-api`). No boundary rule violation.

## Filter: shadow-check

No competing RPC client in the workspace. No shadow.

## Filter: eu-residency

Client-side HTTP transport; calls the workspace's own tRPC server, no third-party vendor. n/a.

## Filter: cve-scan

No advisories at adoption time.

## Filter: named-consumer

`core-trpc` uses `@trpc/client` to build the typed HTTP client exposed to feature packages.

## Prompt: replaces

Nothing — this is the initial tRPC scaffold.

## Prompt: migration-cost-out

Hard: the typed client is tightly coupled to the server router type; replacing requires re-implementing the client abstraction.

## Prompt: alternatives-considered

1. **Plain fetch** — loses end-to-end type safety.
2. **GraphQL client** — significantly heavier; not aligned with the workspace API shape.
`@trpc/client` is the only viable companion to `@trpc/server`.
