vercel/swr

React用のデータ取得Hooksライブラリ。キャッシュを活用した高速で反応的なUI実現が可能です。

開発の材料自由に使える · MITWeb・Next.js・フルスタックTypeScript難易度
32,4920 保存
1,386フォーク149Issue
デモ・公式サイトをひらくswr.vercel.app

中辛 の解説

SWRはNext.js開発チームが作ったTypeScript対応のReact Hooksライブラリです。useSWRというシンプルなHookを使い、キャッシュ・リクエスト重複排除・フォーカス時の再検証・ネットワーク復帰時の自動更新などが組み込まれています。サーバーサイドレンダリング対応で、デモはswr.vercel.appで確認できます。

こんなリポジトリです

こんなときに便利です

  • APIエンドポイントからのデータ取得をシンプルに管理したいとき
  • キャッシュと自動再検証で高速なUXを実現したいとき
  • 複数のコンポーネントで同じデータを共有し、リクエストを効率化したいとき

主な機能

stale-while-revalidate戦略に基づくキャッシュとリクエスト重複排除フォーカス・ネットワーク復帰・ポーリングなどの自動再検証ローカルmutation(楽観的UI更新)とReact Suspense対応

ほかとの違い

Vercelが開発・保守し、Next.jsとの統合が深く、シンプルで軽量なAPIが特徴です。

このリポジトリの作り方

はじめてですか? むずかしくありません — 上から順にたどれば、自分の環境で動かして味見できます。

準備するもの

  • React 16.8以上
  • npm or yarn

すぐに始める

  1. SWRをnpmでインストールします。
npm install swr
  1. コンポーネント内でuseSWRをインポートして、keyとfetcher関数を指定します。
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>
}
  1. fetcher関数を定義します(例:fetch APIを使用)。
const fetcher = (url) => fetch(url).then(r => r.json())
  1. コンポーネントをレンダリングするとき、keyの値がリクエストの一意な識別子になり、fetcher関数がデータを非同期で取得します。

ギット飯トライで味見

入れるのが面倒で少し不安だったなら — 安全スキャンからインストールまで、ターミナル一行で終わります。

ターミナルに貼り付ければ、ギット飯の安全スキャン → 隔離フォルダへ clone → インストール → 実行方法の案内まで自動です。はじめてでも大丈夫 — この一行だけです。

npx gitbap-try vercel/swr

Node.js さえあれば、インストールなしで動きます · ギット飯トライとは? →

スター推移 · 7日

32,4927日間の増加数を計算するための比較データが不足しています

確認日時

使いやすさ · まねしやすいか

まねしやすいサンプル評点 50/100
  • ゆるいライセンス
  • テストあり
  • サンプル集
  • 最近の更新
  • AGENTS.md
  • llms.txt
  • テンプレート

最近の更新あり · 2019 年に作成

「Web・Next.js・フルスタック」 こういうリポジトリを毎週受け取りませんか?

毎週月曜の朝、選んだ一膳だけ。広告なし · いつでも解除。

自分のリポジトリですか? README にギット飯バッジを貼る
[![깃밥](https://www.gitbap.com/badge/vercel/swr.svg)](https://www.gitbap.com/r/vercel/swr)
Claude からそのまま使う — ギット飯のつなぎ方

ギット飯を Claude につなぐと、こうしたリポジトリを Claude・Cursor・Codex から直接さがして試せます。

方法 ① コネクタ URL

Claude の設定 → コネクタにこのアドレスを貼り付け。

https://www.gitbap.com/api/mcp
方法 ② プラグイン(試用まで)

プラグインを入れると /gitbap-trending·/gitbap-try のスラッシュコマンドで、その場でリポジトリを試せます。Claude Code で下の 2 行を順に実行してください。

/plugin marketplace add jakeparkcolde/gitbap-cowork
/plugin install gitbap-cowork@gitbap
つなぎ方をくわしく →

AI が README をもとに要約しました · 原文を見る