[![npm version][npm-version-src]][npm-version-href] [![npm downloads][npm-downloads-src]][npm-downloads-href] [![Stars][stars-src]][stars-href] [![License][license-src]][license-href] [![Coverage][coverage-src]][coverage-href] [![Node][node-src]][node-href] [![OC Backers][oc-backers-src]][oc-backers-href]
Documentation ยท Report Bug ยท Request Feature
Kubb
The meta framework for code generation
Point Kubb at a schema and it generates types, clients, hooks, validators, mocks, and more.
Installation
bun add kubb
or
pnpm add kubb
or
npm install kubb
Quick start
Run the setup wizard to create a kubb.config.ts:
npx kubb init
The wizard creates a package.json if needed, guides you through plugin selection, installs packages, and writes kubb.config.ts. Then generate your code:
npx kubb generate
See the documentation for detailed usage and advanced features.
Features
- Generate TypeScript types, type-safe clients, TanStack Query and SWR hooks, Zod validators, Faker mocks, and MSW handlers from one schema.
- Generate a typed axios or Fetch client with status-keyed results, auth, validation, file uploads, server-sent events, interceptors, and a swappable transport.
- Read OpenAPI 2.0, 3.0, and 3.1 through adapters like
@kubb/adapter-oas, with output for Node.js and Bun. - Enable only the plugins you need:
plugin-ts,plugin-axios,plugin-fetch,plugin-react-query,plugin-vue-query,plugin-swr,plugin-zod,plugin-faker,plugin-msw,plugin-cypress,plugin-redoc,plugin-mcp. - Shape the output by grouping files by tag, including or excluding operations, and writing to disk, memory, or a custom storage backend.
- Build your own plugins, generators, adapters, and renderers with the
kubb/kitauthoring toolkit, plus a JSX renderer for component-based output. - Run generation in your bundler with
unplugin-kubbfor Vite, Nuxt, Astro, webpack, and more. - Drive generation from AI tools over the built-in MCP server (Claude, Cursor) or inside Claude Code.
Supporting Kubb
Kubb is an open source project, and its development is funded entirely by sponsors. If you would like to become a sponsor, please consider:
Contributing
We welcome contributions that help improve Kubb. A few ways to get involved:
- Found a bug? File it in the issue tracker.
- Have an idea to improve Kubb? Open an issue to share it.
- Need help? Ask the community on Discord.
Contributors [![Contributors][contributors-src]][contributors-href]
License
This repository is licensed under the MIT License, Copyright ยฉ 2025 Stijn Van Hulle.
See LICENSE for details.
Star history
[npm-version-src]: https://shieldcn.dev/npm/v/@kubb/core.svg?variant=secondary&size=xs&theme=zinc&mode=dark [npm-version-href]: https://npmx.dev/package/@kubb/core [npm-downloads-src]: https://shieldcn.dev/npm/dm/@kubb/core.svg?variant=secondary&size=xs&theme=zinc&mode=dark [npm-downloads-href]: https://npmx.dev/package/@kubb/core [stars-src]: https://shieldcn.dev/github/stars/kubb-labs/kubb.svg?variant=secondary&size=xs&theme=zinc&mode=dark [stars-href]: https://github.com/kubb-labs/kubb [license-src]: https://shieldcn.dev/npm/license/kubb.svg?variant=secondary&size=xs&theme=zinc [license-href]: https://github.com/kubb-labs/kubb/blob/main/LICENSE [node-src]: https://shieldcn.dev/npm/node/kubb.svg?variant=secondary&size=xs&theme=zinc&mode=dark [node-href]: https://npmx.dev/package/@kubb/core [contributors-src]: https://shieldcn.dev/github/contributors/kubb-labs/kubb.svg?variant=secondary&size=xs&theme=zinc&mode=dark [contributors-href]: #contributors- [coverage-src]: https://shieldcn.dev/codecov/github/kubb-labs/kubb.svg?variant=secondary&size=xs&theme=zinc&mode=dark [coverage-href]: https://app.codecov.io/gh/kubb-labs/kubb [oc-backers-src]: https://shieldcn.dev/opencollective/backers/kubb.svg?variant=secondary&size=xs&theme=zinc&mode=dark [oc-backers-href]: https://opencollective.com/kubb