3.2 KiB
Nuxt Kit
Nuxt Kit provides composable utilities to make interacting with [/docs/advanced/hooks](Nuxt Hooks) and Nuxt Builder Core and developing Nuxt Modules super easy!
Usage
Install dependency
You can install the latest nuxt kit by adding it to dependencies
of package.json
. However, please consider always explicitly installing the @nuxt/kit
package even if it is already installed by nuxt.
{
"dependencies": {
"@nuxt/kit": "npm:@nuxt/kit-edge@latest"
}
}
Import kit utilities
import { useNuxt } from '@nuxt/kit'
::alert{type="warning"} Nuxt kit utilities are only available for modules and not meant to be imported in runtime (components, vue composables, pages, plugins, or server routes) ::
Nuxt kit, is an esm-only package meaning you cannot require('@nuxt/kit')
. As a workaround, we can use dynamic import to use it in the CommonJS context:
// This does NOT work!
// const kit = require('@nuxt/kit')
async function main() {
const kit = await import('@nuxt/kit')
}
main()
Use kit utilities
Nuxt context is globally available using unjs/unctx. Because of this, most kit composables do not need to have nuxt
instances explicitly passed.
import { getNuxtVersion } from '@nuxt/kit'
// 3.0.0
console.log(getNuxtVersion())
Utilities
Modules
installModule(module, inlineOptions)
Programmatic usage
loadNuxt(loadOptions)
buildNuxt(nuxt)
loadNuxtConfig(loadOptions)
Compatibility
checkNuxtCompatibility(constraints)
assertNuxtCompatibility(constraints)
hasNuxtCompatibility(constraints)
isNuxt2()
isNuxt3()
getNuxtVersion()
Components
addComponentsDir(dir)
addComponent(componentObject)
Context
useNuxt()
Plugins
addPlugin(pluginOptions, { append? })
addPluginTemplate(pluginOptions, { append? })
Templates
addTemplate(templateOptions)
Server
addServerMiddleware(serverMiddleware)
Resolving
resolvePath (path, resolveOptions?)
tryResolvePath (path, resolveOptions?)
Builder
extendWebpackConfig(callback, options?)
extendViteConfig(callback, options?)
addWebpackPlugin(webpackPlugin, options?)
addVitePlugin(vitePlugin, options?)