Skip to content

Configuration

All module options live under the vuqs key in nuxt.config:

ts
// nuxt.config.ts
export default defineNuxtConfig({
  modules: ['@vuqs/nuxt'],
  vuqs: {
    autoImports: true,
    adapter: { defaultOptions: { history: 'replace' } },
  },
})

Options

OptionTypeDefaultDescription
autoImportsboolean | { composables?, codecs?, modules? }trueRegister vuqs APIs as auto-imports. false registers none; an object toggles each group.
adapterboolean | { defaultOptions? }trueProvide the vue-router adapter app-wide. false disables it so you can provide your own.
debugboolean | 'force'falseEnable console debug logging. true is dev-only; 'force' also logs in production.

Types

ts
interface ModuleOptions {
  autoImports?: boolean | AutoImportsOptions // default: true
  adapter?: boolean | AdapterOptions // default: true
  debug?: boolean | 'force' // default: false; 'force' keeps logging in production
}

interface AutoImportsOptions {
  composables?: boolean // useQueryState(s), use/provideQueryAdapter, queryParam, defineQueryModule, createSerializer
  codecs?: boolean // the `codecs` namespace and `createCodec`
  modules?: boolean // the composable modules from `@vuqs/core/modules`
}

interface AdapterOptions {
  defaultOptions?: QueryAdapterDefaultOptions
}

Passing an object to autoImports or adapter enables the listed groups; omitted keys default to true.

Released under the MIT License.