Busca de dados moderna, construída para React

SWR é uma API mínima com cache integrado, revalidação e deduplicação de requisições. Mantém sua UI rápida, consistente e sempre atualizada — com um único hook React.

Buscar dados com um hook

Passe uma chave e um fetcher para useSWR. O hook gerencia a requisição, armazena a resposta em cache e mantém os dados atualizados. Você obtém data, error e isLoading para controlar sua UI.

import useSWR from 'swr'
 
function Profile() {
  const { data, error, isLoading } = useSWR('/api/user', fetcher)
 
  if (error) return <div>failed to load</div>
  if (isLoading) return <div>loading...</div>
  return <div>hello {data.name}!</div>
}

Buscar, solicitar e revalidar

SWR cobre todos os aspectos de velocidade, correção e estabilidade para ajudá-lo a criar melhores experiências.

Navegação rápida entre páginasPolling em intervalosDependência de dadosRevalidação ao focarRevalidação na recuperação da redeMutação local (UI otimista)Nova tentativa de erro inteligentePaginação e recuperação de posição de rolagemReact Suspense

Leve e agnóstico

Uma superfície de API pequena com suporte para qualquer fonte de dados — REST, GraphQL ou fetchers personalizados.

Tempo real e resiliente

Revalidação automática em segundo plano, atualizações de foco/reconexão e utilitários para paginação e streaming.

Ergonomia React nativa

Construído para Suspense, compatível com SSR e SSG, e totalmente tipado desde o início.

Comece a construir com SWR

Começar