TanStack съедает экосистему React, и никто об этом не говорит
Если вы пишете на React и давно не пересматривали свой стек — возможно, половина ваших зависимостей уже TanStack, а вы этого не заметили. Перевод колонки разработчика о том, как TanStack тихо стал полноценной альтернативой Next.js, React Router, Redux и React Hook Form — и почему именно сейчас стоит хотя бы попробовать его новые библиотеки.
Если вы пишете на React и давно не пересматривали свой стек — загляните в package.json. Велика вероятность, что половина ваших зависимостей уже из семейства TanStack, а вы этого не планировали. Публикуем перевод колонки разработчика Harsh с dev.to о том, как за два года TanStack превратился из одной библиотеки в полноценную платформу, которая вытесняет Next.js, Redux и React Router.
Полгода назад я бы посмеялся над таким заголовком. TanStack? Это же ребята, которые делают React Query. Съедают экосистему? Я много лет пользовался React Query, любил его, рекомендовал всем — но воспринимал TanStack как одну библиотеку. Отличную библиотеку, не больше.
Потом я обновил проект в прошлом месяце и заметил кое-что. Я уже использовал TanStack Query, TanStack Router и TanStack Table. TanStack Form начал заменять React Hook Form в новых проектах. А TanStack Start полностью вытеснил мой Next.js-сетап. Я открыл package.json — и почувствовал странное: половина моего стека оказалась TanStack. Не потому что я так планировал, а потому что по одной библиотеке за раз, месяц за месяцем, TanStack просто становился лучшим выбором. И я шёл за лучшим выбором, не задумываясь, куда это меня ведёт.
Ключевые выводы
- TanStack превратился из одной библиотеки (Query) в полноценную платформу из восьми взаимосвязанных продуктов: Query, Router, Table, Form, Start, Store, DB и AI
- По State of React 2026 (~3700 разработчиков) у TanStack Query 68% использования и всего 1% негатива, у Next.js — те же ~80% охвата, но в 17 раз больше негатива
- Главное отличие философии: все библиотеки TanStack headless — они делают логику, а UI и рендеринг остаются за вами
- TanStack Router и TanStack Start дают сквозную типизацию по всему приложению — от search params до server functions
- Реальность: TanStack Start ещё RC, TanStack DB — в бете, TanStack AI — в альфе. На прод сейчас безопасно только Query/Router/Table/Form/Store
- Рекомендация автора: Query ставьте уже сегодня, Router — на новом greenfield-проекте, Start — пока наблюдайте
Что сейчас вообще такое TanStack
Два года назад TanStack означал одно: React Query — лучшая библиотека для фетчинга данных в экосистеме React. Простая, мощная, решала реальную проблему. Сегодня TanStack — это восемь взаимосвязанных библиотек, которые вместе образуют полноценную фронтенд-платформу.
- TanStack Query — заменяет ручной fetch + useEffect. Стабильна, 68% использования
- TanStack Router — заменяет React Router и роутинг Next.js. Стабильна
- TanStack Table — заменяет все табличные библиотеки сразу. Стабильна
- TanStack Form — заменяет React Hook Form. Стабильна
- TanStack Start — заменяет Next.js и Remix. RC, активно растёт
- TanStack Store — заменяет Zustand и Redux. Стабильна
- TanStack DB — заменяет Firebase и Supabase-клиенты. Бета
- TanStack AI — заменяет AI SDK других вендоров. Альфа
Два года назад — одна библиотека. Сегодня — целая платформа, которая может заменить ваш фреймворк. И почему-то большинство разработчиков до сих пор спят.
Момент, который всё изменил
Восемь месяцев назад я дебажил проблему с роутингом в проекте на Next.js. Конкретно — URL search params. Это когда фильтры, пагинация и сортировка живут в URL, чтобы пользователи могли делиться ссылками, а кнопка «Назад» работала правильно.
В Next.js для этого нужно жонглировать тремя хуками:
Работало. Но многословно. И не типобезопасно: searchParams.get('category') возвращает string | null, и TypeScript не знает, какие значения валидны. А потом я увидел, как коллега делает ровно то же самое через TanStack Router:
TypeScript точно знал, какого типа category и page. Он упал бы при компиляции, если бы я попытался установить невалидное значение. Состояние URL и типы TypeScript были в идеальной синхронизации. Я долго смотрел на этот код, потом открыл новую ветку и начал миграцию.
Цифры — State of React 2026
Здесь история перестаёт быть моей личной и становится чем-то большим. Опрос State of React 2026 — более 3700 разработчиков, опубликован в феврале 2026 — дал показательные результаты.
Next.js, который когда-то казался стандартом для фулстек-React, широко используется, но не особо любим: 80% респондентов им пользовались, у 17% — негативное отношение, основные жалобы на избыточную сложность и слишком тесную интеграцию с главным спонсором (Vercel).
А вот цифры по TanStack Query: 68% использования, 42% позитивного отношения, 1% негативного. Один процент негатива у библиотеки, которой пользуется 68% React-разработчиков. Это ненормально хорошие цифры. Для сравнения: у Next.js в 17 раз больше негатива при примерно том же охвате. Экосистема говорит. Большинство просто пока не слушает.
Почему TanStack выигрывает
После нескольких месяцев размышлений я для себя так это сформулировал: TanStack выигрывает потому, что у него есть философия — и эта философия лучше той, которую он заменяет.
Философия звучит так: владей своим кодом, а не фреймворком. Каждая библиотека TanStack — headless by design, то есть без встроенного UI: она занимается логикой, а вёрстку и стили делаете вы. Нет никакого готового TanStack-компонента, который нужно подгонять под свой дизайн. Нет TanStack-стилей, с которыми нужно воевать. Нет мнения TanStack о том, как должно выглядеть ваше приложение.
Сравните это с Next.js — там ваши <Image>, шрифты, роутинг и серверное поведение контролируются фреймворком. Вы получаете мощь, но платите вендор-лок-ином. «Vendor lock-in, сложные API и слишком много шума в экосистеме Next.js — для меня это no-go», — так сформулировал один из респондентов опроса. Ответ TanStack на эту жалобу — архитектурный: это не фреймворк, а набор строительных блоков. Код — ваш, решения — ваши, а TanStack просто берёт на себя сложные части.
Ключевые библиотеки, которые стоит знать прямо сейчас
1. TanStack Query — вы наверняка уже им пользуетесь
Если вы ещё не используете TanStack Query — остановитесь и поставьте его прямо сейчас: npm i @tanstack/react-query плюс обернуть приложение в QueryClientProvider. Я подожду.
Кеширование, фоновые рефетчи, stale-while-revalidate (показываем старые данные, пока подгружаются свежие), оптимистичные обновления, бесконечный скролл, devtools — всё в комплекте. Это точка входа в экосистему TanStack — именно с Query начинают большинство.
2. TanStack Router — тот, который удивит больше всего
Это библиотека, которая окончательно перетянула меня на сторону TanStack. Полная сквозная типизация по всему слою роутинга — не только пути, но и search params, контекст маршрута, данные лоадеров — всё типизируется от маршрута до компонента.
Если у вас хоть раз был баг из-за того, что useParams() вернул undefined, а TypeScript не предупредил — TanStack Router и есть ответ.
3. TanStack Form — наследник React Hook Form
React Hook Form — отличная библиотека. TanStack Form — это то, чем был бы React Hook Form, если бы его писали сегодня, с TypeScript-first подходом. Никаких строковых register('email') — все имена полей проверяются типами.
4. TanStack Start — альтернатива Next.js, которую никто не ждал
Это самое новое и самое спорное пополнение. TanStack Start — это меньше магии и больше контроля: вы сами решаете, как грузятся данные, где они запускаются и что рендерится. Типобезопасность отличная, и Start прекрасно дружит со всей остальной экосистемой TanStack. Полноценный fullstack-фреймворк поверх TanStack Router — SSR, стриминг, server functions, всё как в Next.js, но без привязки к Vercel и с end-to-end типизацией.
Больше не нужно гадать, что возвращает ваш API: типы текут от базы данных до компонента без единой ручной аннотации.
5. TanStack DB и AI — будущее, которое строится прямо сейчас
У TanStack есть несколько проектов на ранних стадиях: помимо стабильных Query/Router/Table/Form/Store, в бете — TanStack DB, в альфе — TanStack AI, а ещё есть TanStack CLI со встроенным MCP-сервером (Model Context Protocol) для работы с ИИ-агентами.
TanStack DB — реактивное клиентское хранилище данных: что-то вроде Firebase, но без привязки к вендору. TanStack AI — унифицированный интерфейс к разным ИИ-провайдерам: один и тот же API, независимо от того, дёргаете ли вы Claude, GPT-4 или Gemini. И то, и другое пока не прод — но они показывают, куда движется TanStack. Это уже не библиотеки, это платформа.
Честный контраргумент
Я выставил TanStack серебряной пулей. Это не так. Если ваша команда хорошо знает Redux и React Router, потеря продуктивности на изучение новых инструментов может не окупиться. У Next.js годы боевой эксплуатации на проде. Redux-разработчиков на рынке больше, чем TanStack-разработчиков, — это важно для найма. Если вам нужна скучная и предсказуемая технология, оставайтесь на привычном стеке.
Ещё один момент: если вам нужны React Server Components с полной прод-поддержкой уже сегодня — Next.js всё ещё ответ. И если ваша команда глубоко в Redux, а переход на новое означает месяцы переобучения, — цена, возможно, не оправдана. TanStack — отличный инструмент, но не всегда правильный выбор. Используйте его, когда его сильные стороны совпадают с вашими задачами.
Так стоит ли переходить
Честная рекомендация после шести месяцев жизни в экосистеме TanStack:
- Ставьте Query уже сегодня. Если вы ещё не пользуетесь — это самое выгодное по ROI изменение, которое можно сделать в React-кодбазе. Минимум риска, моментальный эффект, плюс это ворота в понимание философии TanStack
- Попробуйте Router на следующем greenfield-проекте (то есть новом, с чистого листа). Не мигрируйте существующее приложение — ценность яснее всего видна, когда вы стартуете с типобезопасности с первого дня
- Наблюдайте за Start. Он ещё не так стабилен, как Next.js. Но траектория понятна: разработчики, которые изучат его сейчас, получат заметное преимущество, когда он дойдёт до 1.0
- Следите за DB и AI. Оба слишком ранние для прода. Но они показывают амбиции команды TanStack — и, судя по её послужному списку, получатся отлично, когда будут готовы
Что всё это значит
TanStack выигрывает не потому, что маркетит себя лучше Next.js, и не благодаря виральным твитам или докладам на конференциях. Он выигрывает, потому что решает проблему, которая реально болит у React-разработчиков в 2026 году: слишком много магии, слишком много вендор-лок-ина, слишком много сложности, которая живёт не в вашем коде, а в фреймворке.
TanStack возвращает вам контроль. Полную типобезопасность. Никакого скрытого поведения. Никакой зависимости от вендора. Просто хорошо спроектированные примитивы, которые делают ровно то, что написано на коробке. В эпоху, когда ИИ пишет всё больше кода за нас, эта ясность важнее, чем когда-либо: ИИ-инструменты работают лучше с явным типизированным кодом, чем с магическими конвенциями фреймворков. TanStack не планировал съесть экосистему React. Он просто построил инструменты получше — и разработчики пошли за лучшими инструментами. Так экосистемы и меняются на самом деле — не анонсами, а пул-реквестами.
Часто задаваемые вопросы
Как начать использовать TanStack Query прямо сейчас?
Поставьте пакет: npm i @tanstack/react-query, оберните корень приложения в QueryClientProvider (передав ему экземпляр new QueryClient()) и замените ваш первый useEffect+useState фетч на useQuery. Документация и примеры — на tanstack.com/query.
TanStack Router vs React Router — когда переходить?
Главная польза TanStack Router — сквозная типизация маршрутов, search params и данных лоадеров. Но она видна только когда вы проектируете приложение с ней с первого дня: на существующем проекте миграция болезненная из-за file-based routing и новой модели загрузки данных. Практичная рекомендация — пробуйте на следующем новом проекте, а текущие не ломайте без необходимости.
TanStack Start готов к проду?
Формально — нет: по State of React 2026 и документации TanStack Start в статусе RC. Это значит, что ломающих изменений быть не должно, но гарантии LTS нет. Если вам нужны React Server Components с полной прод-поддержкой уже сегодня — Next.js остаётся безопасным выбором. Если интересно изучить Start — заводите экспериментальный или внутренний проект, но не ставьте на него критичные сервисы.
Источник: колонка TanStack is eating React's ecosystem and nobody is talking about it на dev.to. Автор: разработчик harsh2644. Перевод сокращён и адаптирован, авторские мнения сохранены.