← Ко всем open source проектам

TanStack Query

TanStack/query

TanStack Query — библиотека для асинхронного состояния, серверных данных, кеширования и синхронизации в веб-приложениях.

Форки 3,903
Автор TanStack
Язык TypeScript
Лицензия Не указано
Обновлено 2026-06-27

Что это такое

TanStack Query — библиотека для работы с асинхронным состоянием и серверными данными в веб-приложениях.

Проект вырос из React Query, но стал частью более широкой TanStack-экосистемы и поддерживает разные фреймворки.

Главная задача TanStack Query — убрать ручную возню вокруг загрузки, кеша, ошибок, повторных запросов и синхронизации данных с сервером.

Что внутри репозитория

В репозитории есть ссылки на документацию, участие, партнеров и другие проекты TanStack.

Библиотеку используют там, где интерфейс постоянно читает и обновляет данные: панели управления, личные кабинеты, редакторы, каталоги и SaaS-приложения.

Как это обычно используют

Обычный сценарий: описать query key, функцию загрузки и использовать возвращаемые состояния в компоненте.

Для команды это помогает отделить серверные данные от локального UI-состояния и не писать одинаковый код загрузки на каждом экране.

Запрос как состояние интерфейса

Пример показывает модель TanStack Query: данные, загрузка, ошибка и кеш живут вокруг одного query key.

Язык: React TSX
const { data, isLoading } = useQuery({
  queryKey: ['todos'],
  queryFn: () => fetch('/api/todos').then((r) => r.json()),
});

Что получается на практике

Сильная сторона проекта — кеширование и повторная синхронизация данных, которые встроены в модель библиотеки.

Еще одно преимущество — развитая экосистема TanStack и поддержка разных UI-стеков.

Ограничения и аккуратные места

Ограничение в том, что библиотека требует понимания ключей, инвалидации и границ кеша. Без этого можно получить устаревшие данные или лишние запросы.

Также TanStack Query не заменяет API-дизайн и серверную модель данных.

Кому подойдет

TanStack Query лучше всего подходит приложениям, где серверные данные активно влияют на интерфейс.

В каталоге TanStack Query важен как проект, который сделал работу с запросами отдельным инженерным слоем, а не набором случайных useEffect.

В долгой работе с таким проектом важна не только установка, но и понятная граница ответственности: что берет на себя репозиторий, какие обновления нужно отслеживать и кто в команде отвечает за правила использования.

Практически это означает: перед внедрением стоит запустить минимальный пример, посмотреть конфигурацию, проверить обновления и понять, какие данные или процессы затрагиваются. Такой короткий проход быстро показывает, где проект помогает сразу, а где потребуются решения команды.

Если проект становится частью публичного сайта, продукта или внутренней платформы, его лучше закрепить в документации команды: ссылка на источник, версия, ответственный и регулярность обновлений. Тогда открытый код остается управляемой зависимостью, а не случайным фрагментом инфраструктуры.