Installation
This package is designed to feel native in Bun-based Vue and Nuxt projects, but the runtime packages work with any package manager.
Choose the package
Use @elysia-vue-query/vue when you manage VueQueryPlugin yourself.
bun add @elysia-vue-query/vue @tanstack/vue-query @elysiajs/edenpnpm add @elysia-vue-query/vue @tanstack/vue-query @elysiajs/edennpm install @elysia-vue-query/vue @tanstack/vue-query @elysiajs/edenyarn add @elysia-vue-query/vue @tanstack/vue-query @elysiajs/edenUse @elysia-vue-query/nuxt when you want Nuxt to handle QueryClient setup and SSR hydration.
bun add @elysia-vue-query/nuxtpnpm add @elysia-vue-query/nuxtnpm install @elysia-vue-query/nuxtyarn add @elysia-vue-query/nuxt@elysia-vue-query/core is pulled in automatically as a dependency. You usually do not install it directly.
Compatibility
| Package | Version |
|---|---|
vue | >= 3.5 |
@tanstack/vue-query | >= 5 |
@elysiajs/eden | >= 1 |
typescript | >= 5.7 |
TypeScript baseline
Use strict mode and Bun or Vite-style module resolution so Eden and TanStack generics resolve cleanly.
{
"compilerOptions": {
"strict": true,
"moduleResolution": "bundler"
}
}Vue setup checklist
- Install the three runtime packages.
- Register
VueQueryPluginonce at app startup. - Create an Eden Treaty client.
- Wrap that client with
createEdenQueryHelpers.
import { createApp } from "vue";
import { QueryClient, VueQueryPlugin } from "@tanstack/vue-query";
import App from "./App.vue";
const app = createApp(App);
const queryClient = new QueryClient();
app.use(VueQueryPlugin, { queryClient });
app.mount("#app");Nuxt setup checklist
Register the module and start using the helpers from a composable.
export default defineNuxtConfig({
modules: ["@elysia-vue-query/nuxt"],
});The Nuxt module:
- registers
VueQueryPluginwith a freshQueryClient - dehydrates query state after SSR
- hydrates that state on the client
- auto-imports
createEdenQueryHelpersfrom@elysia-vue-query/vue
Bun-first workflow
If your repo uses Bun workspaces, the shortest install path is still the best one:
bun add @elysia-vue-query/vue @tanstack/vue-query @elysiajs/edenThat is enough to start authoring the examples shown in the next guide.
Next step
Continue to Getting Started for the first end-to-end setup.