Run Kubb with Nuxt
kubb/nuxt runs Kubb as a Nuxt module. It works with Nuxt 3 and Nuxt 4. The module registers Kubb as both a Vite plugin and a webpack plugin, so Nuxt picks the right one for its active builder.
Install
Install kubb as a dev dependency.
shell
bun add -d kubb@betashell
pnpm add -D kubb@betashell
npm install --save-dev kubb@betashell
yarn add -D kubb@betaConfigure
Pass your Kubb config as the second element of the module tuple. Nuxt auto-imports defineNuxtConfig, so you do not import it.
typescript
import { pluginTs } from '@kubb/plugin-ts'
const config = {
root: '.',
input: { path: './petStore.yaml' },
output: { path: './src/gen', clean: true },
plugins: [pluginTs({ output: { path: 'models' } })],
}
export default defineNuxtConfig({
modules: [['kubb/nuxt', { config }]],
})NOTE
With the default Vite builder, generation runs during nuxt build only, not during nuxt dev. Run kubb generate before you start the dev server.