tRPC в продакшне

tRPC даёт типобезопасный API без OpenAPI и кодогенерации. В монорепо TS — отличная штука. В микросервисах — нет.

tRPC в продакшне

tRPC — это способ писать API без описаний (OpenAPI/Swagger), без кодогенерации. Тип на сервере автоматически становится типом на клиенте через TypeScript.

tRPC в продакшне
tRPC — нишевый инструмент, отлично для одного, никак для другого.

Когда tRPC сильно помогает:

  • Монорепо с одной командой, где фронт и бэк пишут одни и те же люди.
  • Next.js full-stack приложения.
  • Внутренние инструменты без внешних потребителей.

Когда tRPC не подходит:

  • API будет потреблять кто-то ещё кроме твоего фронта (мобилка на нативе, партнёры, sdk).
  • Команда фронта и бэкенда — разные люди, с разными циклами релизов.
  • Бэкенд не на TypeScript.
  • Микросервисы с разными командами.

Что часто упускают:

  • tRPC — это RPC. Не REST. Если у вас уже REST-конвенции в команде — миграция всей семантики.
  • Версионирование — не из коробки. В отличие от OpenAPI, где есть стандартные пути.
  • Документация — генерируется хуже, чем у REST/GraphQL.

Если у вас Next.js + один продукт + одна команда — tRPC отлично. Иначе обычно проще делать REST с OpenAPI.