Files
upstream-mirror 3a013ccdfe
Some checks failed
autofix.ci / autofix (push) Failing after 4s
Release / Release (push) Has been skipped
GitHub Actions Security Analysis / Run zizmor (push) Failing after 2s
snapshot of https://github.com/TanStack/query.git (main, 2026-09-16; blobs > 131072B omitted)
2026-09-16 01:13:08 +05:00

78 lines
1.8 KiB
Markdown

---
id: overview
title: Overview
---
The `@tanstack/svelte-query` package offers a 1st-class API for using TanStack Query via Svelte.
> Migrating from stores to the runes syntax? See the [migration guide](./migrate-from-v5-to-v6).
## Example
Include the QueryClientProvider near the root of your project:
```svelte
<script lang="ts">
import { QueryClient, QueryClientProvider } from '@tanstack/svelte-query'
import Example from './lib/Example.svelte'
const queryClient = new QueryClient()
</script>
<QueryClientProvider client={queryClient}>
<Example />
</QueryClientProvider>
```
Then call any function (e.g. createQuery) from any component:
```svelte
<script lang="ts">
import { createQuery } from '@tanstack/svelte-query'
const query = createQuery(() => ({
queryKey: ['todos'],
queryFn: () => fetchTodos(),
}))
</script>
<div>
{#if query.isPending}
<p>Loading...</p>
{:else if query.isError}
<p>Error: {query.error.message}</p>
{:else if query.isSuccess}
{#each query.data as todo}
<p>{todo.title}</p>
{/each}
{/if}
</div>
```
## SvelteKit
If you are using SvelteKit, please have a look at [SSR & SvelteKit](./ssr).
## Available Functions
Svelte Query offers useful functions and components that will make managing server state in Svelte apps easier.
- `createQuery`
- `createQueries`
- `createInfiniteQuery`
- `createMutation`
- `useQueryClient`
- `useIsFetching`
- `useIsMutating`
- `useMutationState`
- `useIsRestoring`
- `useHydrate`
- `<QueryClientProvider>`
- `<HydrationBoundary>`
## Important Differences between Svelte Query & React Query
Svelte Query offers an API similar to React Query, but there are some key differences to be mindful of.
- The arguments to the `create*` functions must be wrapped in a function to preserve reactivity.