swr
React Hooks for Data Fetching
File Explorer
- ci.json
- bug_report.md
- config.yml
- action.yml
- test-canary.yml
- test-legacy-react.yml
- test.yml
- trigger-release.yml
- CODE_OF_CONDUCT.md
- CODEOWNERS
- CONTRIBUTING.md
- SECURITY.md
- pre-commit
- package.json
- use-projects.js
- use-repository.js
- fetch.js
- [repo].js
- data.js
- index.js
- package.json
- README.md
- fetcher.js
- suggestions.js
- index.js
- package.json
- README.md
- fetch.js
- [repo].js
- data.js
- index.js
- package.json
- README.md
- fetch.ts
- [repo].tsx
- data.ts
- index.tsx
- next-env.d.ts
- package.json
- README.md
- tsconfig.json
- button.js
- auth.js
- fetch.js
- user.js
- index.js
- package.json
- README.md
- fetch.js
- [repo].js
- data.js
- _app.js
- index.js
- package.json
- README.md
- fetch.js
- index.js
- package.json
- README.md
- useOnScreen.js
- fetch.js
- index.js
- package.json
- README.md
- store.js
- index.js
- package.json
- README.md
- fetch.js
- todos.js
- _app.js
- index.js
- package.json
- README.md
- styles.css
- fetch.js
- data.js
- index.js
- package.json
- README.md
- fetch.js
- [repo].js
- data.js
- index.js
- package.json
- README.md
- button.js
- fetch.js
- data.js
- index.js
- package.json
- README.md
- fetcher.js
- [pokemon].js
- index.js
- package.json
- README.md
- storage.js
- index.js
- package.json
- README.md
- index.js
- package.json
- README.md
- error.jsx
- loading.jsx
- page.jsx
- repo.jsx
- loading.jsx
- page.jsx
- repos.jsx
- favicon.ico
- layout.jsx
- error-handling.js
- fetch.js
- [repo].js
- data.js
- index.js
- next-env.d.ts
- package.json
- README.md
- error-handling.ts
- fetch.ts
- [repo].tsx
- detail.tsx
- data.ts
- _app.tsx
- index.tsx
- repos.tsx
- global-swr-config.tsx
- next-env.d.ts
- package.json
- README.md
- tsconfig.json
- route.ts
- favicon.ico
- layout.tsx
- manual-retry.tsx
- page.tsx
- use-remote-data.ts
- retry.tsx
- next-env.d.ts
- next.config.js
- package.json
- tsconfig.json
- package.json
- package.json
- package.json
- bump-next-version.js
- cache.ts
- config-context.ts
- config.ts
- devtools.ts
- env.ts
- global-state.ts
- hash.ts
- helper.ts
- merge-config.ts
- middleware-preset.ts
- mutate.ts
- normalize-args.ts
- preload.ts
- resolve-args.ts
- serialize.ts
- server-preload.ts
- shared.ts
- subscribe-key.ts
- timestamp.ts
- use-swr-config.ts
- web-preset.ts
- with-middleware.ts
- constants.ts
- events.ts
- index.react-server.ts
- index.ts
- types.ts
- index.ts
- config.ts
- index.react-server.ts
- index.ts
- serialize.ts
- use-swr.ts
- index.react-server.ts
- index.ts
- serialize.ts
- types.ts
- index.ts
- state.ts
- types.ts
- index.ts
- types.ts
- package.json
- block.tsx
- page.tsx
- page.tsx
- transition-demo.tsx
- page.tsx
- reproduction.tsx
- action.tsx
- page.tsx
- layout.tsx
- loading.tsx
- page.tsx
- use-data.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- page.tsx
- client.tsx
- key.ts
- page.tsx
- client.tsx
- key.ts
- page.tsx
- client.tsx
- key.ts
- page.tsx
- page.tsx
- page.tsx
- remote-data.tsx
- page.tsx
- layout.tsx
- page.tsx
- manual-retry.tsx
- page.tsx
- use-remote-data.ts
- page.tsx
- layout.tsx
- page.tsx
- manual-retry-mutate.tsx
- manual-retry.tsx
- only-render-in-client.tsx
- use-remote-data.ts
- sleep.ts
- use-debug-history.ts
- data.ts
- retry.ts
- suspense-retry-19.tsx
- suspense-retry-mutate.tsx
- favicon.ico
- next.config.js
- package.json
- tsconfig.json
- concurrent-transition.test.ts
- initial-render.test.ts
- issue-2702-too-many-hooks.ts
- mutate-server-action.test.ts
- perf.test.ts
- playwright.config.ts
- preload-scenarios.test.ts
- promise-scenarios.test.ts
- server-prefetch-warning.test.ts
- stream-ssr.test.ts
- suspense-fallback.test.ts
- suspense-scenarios.test.ts
- suspense-undefined-key.test.ts
- tsconfig.json
- warmup.setup.ts
- helper-types.tsx
- suspense.ts
- tsconfig.json
- config.tsx
- fetcher.ts
- helper-types.tsx
- internal.tsx
- mutate.ts
- mutation.ts
- option-fetcher.ts
- preload.ts
- subscription.ts
- trigger.ts
- tsconfig.json
- utils.ts
- serialize.test.ts
- utils.test.tsx
- web-preset.test.ts
- jest-setup.ts
- tsconfig.json
- use-swr-cache.test.tsx
- use-swr-concurrent-rendering.test.tsx
- use-swr-config-callbacks.test.tsx
- use-swr-config.test.tsx
- use-swr-context-config.test.tsx
- use-swr-devtools.test.tsx
- use-swr-error.test.tsx
- use-swr-fetcher.test.tsx
- use-swr-focus.test.tsx
- use-swr-immutable.test.tsx
- use-swr-infinite-preload.test.tsx
- use-swr-infinite.test.tsx
- use-swr-integration.test.tsx
- use-swr-key.test.tsx
- use-swr-laggy.test.tsx
- use-swr-legacy-react.test.tsx
- use-swr-loading.test.tsx
- use-swr-local-mutation.test.tsx
- use-swr-middlewares.test.tsx
- use-swr-node-env.test.tsx
- use-swr-offline.test.tsx
- use-swr-preload.test.tsx
- use-swr-promise.test.tsx
- use-swr-reconnect.test.tsx
- use-swr-refresh.test.tsx
- use-swr-remote-mutation.test.tsx
- use-swr-revalidate.test.tsx
- use-swr-server.test.tsx
- use-swr-streaming-ssr.test.tsx
- use-swr-subscription.test.tsx
- use-swr-suspense.test.tsx
- use-swr-unload.test.tsx
- utils.tsx
- .editorconfig
- .gitignore
- .npmrc
- .oxfmtrc.json
- .oxlintrc.json
- .swcrc
- jest.config.build.js
- jest.config.js
- LICENSE
- package.json
- pnpm-lock.yaml
- pnpm-workspace.yaml
- README.md
- tsconfig.json
# Installation Guide
nodeSetup Steps
pnpm install
Install all project dependencies.
pnpm build
Build the project for production and usage.
pnpm test
Run the test suite to verify correct functionality.
Key Commands
pnpm install
Install project dependencies using pnpm.
pnpm build
Build the library source code.
pnpm test
Run unit and integration tests.
This project uses a monorepo structure and relies on pnpm for package management.
# Use via CDN
jsDelivrjsDelivr serves any public GitHub repository as a CDN with zero setup. Pick a version and a file to get a ready-to-paste link and snippet.
Link
Example
Release Timeline
Actively Maintained- 2026-08-12 v2.5.1
- 2026-08-03 v.2.5.0
- 2026-07-15 v2.5.0-beta.1 Pre-release
- 2026-07-07 v2.5.0-beta.0 Pre-release
- 2026-06-22 v2.4.2
- 2026-06-22 v2.4.1
- 2026-02-01 v2.4.0
- 2025-12-15 v2.3.8
- 2025-11-28 v2.3.7
- 2025-08-11 v2.3.6
// repository documentation
Was this content helpful?
(0 ratings)
