{"id":20643,"library":"unplugin-auto-import","title":"unplugin-auto-import","description":"Auto-import APIs on-demand for Vite, Webpack, Rspack, Rollup, Rolldown, esbuild and Astro. Current stable version is 21.0.0 (ESM-only, Node >=20.19.0). Release cadence follows semver with frequent minor/patch releases. Key differentiators: supports multiple bundlers, TypeScript type generation, ESLint config update, and preset system for popular libraries like Vue, React, and VueUse.","status":"active","version":"21.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/unplugin/unplugin-auto-import","tags":["javascript","unplugin","vite","astro","webpack","rolldown","rollup","rspack","auto-import","typescript"],"install":[{"cmd":"npm install unplugin-auto-import","lang":"bash","label":"npm"},{"cmd":"yarn add unplugin-auto-import","lang":"bash","label":"yarn"},{"cmd":"pnpm add unplugin-auto-import","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency for Nuxt integration (required for Nuxt preset).","package":"@nuxt/kit","optional":true},{"reason":"Peer dependency for VueUse preset (optional but commonly used).","package":"@vueuse/core","optional":true}],"imports":[{"note":"E5-only since v21; use dynamic import in CommonJS or upgrade to ESM.","wrong":"const AutoImport = require('unplugin-auto-import/vite')","symbol":"default","correct":"import AutoImport from 'unplugin-auto-import/vite'"},{"note":"For Webpack/Rspack config files written in CommonJS, use dynamic import or switch to ESM.","wrong":"const AutoImport = require('unplugin-auto-import/webpack')","symbol":"default","correct":"import AutoImport from 'unplugin-auto-import/webpack'"},{"note":"Must import from subpath for the specific bundler; default export from root is not available.","wrong":"import AutoImport from 'unplugin-auto-import'","symbol":"default","correct":"import AutoImport from 'unplugin-auto-import/rollup'"}],"quickstart":{"code":"// vite.config.ts (ESM)\nimport { defineConfig } from 'vite'\nimport AutoImport from 'unplugin-auto-import/vite'\n\nexport default defineConfig({\n  plugins: [\n    AutoImport({\n      imports: ['vue', 'vue-router'],\n      dts: true // or './src/types/auto-imports.d.ts'\n    })\n  ]\n})\n\n// Now use ref, computed, etc. without imports:\nimport { ref, computed } from 'vue' // not needed\nconst count = ref(0)\nconst doubled = computed(() => count.value * 2)\n","lang":"typescript","description":"Shows basic Vite + Vue setup with auto-import plugin, enabling Vue composables without explicit imports."},"warnings":[{"fix":"Ensure project is ESM (type: module in package.json or .mjs files) and upgrade Node to >=20.19.0.","message":"v21.0.0 dropped CommonJS support (ESM-only) and requires Node >=20.19.0","severity":"breaking","affected_versions":">=21.0.0"},{"fix":"Update @nuxt/kit to ^4.0.0 if using Nuxt integration.","message":"v20.0.0 requires @nuxt/kit v4; incompatible with @nuxt/kit v3","severity":"breaking","affected_versions":">=20.0.0 <21.0.0"},{"fix":"Set dts: true explicitly in options to generate TypeScript declarations.","message":"Option 'dts' default value changed; v19+ no longer generates dts by default","severity":"deprecated","affected_versions":">=19.0.0"},{"fix":"Ensure files are in 'include' glob and set 'dts: true' or manually reference generated types via tsconfig.json include.","message":"Auto-import only works in files matching include patterns; TypeScript may report missing types if dts not generated or imported.","severity":"gotcha","affected_versions":">=0.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Upgrade Node to >=20.19.0 and ensure project type is 'module' in package.json, or use dynamic import: const AutoImport = await import('unplugin-auto-import/vite').then(m => m.default);","cause":"Node.js <20.19.0 or CommonJS environment without dynamic import.","error":"Cannot find module 'unplugin-auto-import/vite' or its corresponding type declarations."},{"fix":"Install the library: npm install vue (or react, etc.)","cause":"Missing Vue dependency; auto-import presets require the corresponding library installed.","error":"Error: [unplugin-auto-import] Failed to resolve preset: 'vue'"},{"fix":"Set 'dts: true' in AutoImport options and ensure generated dts file (e.g., 'auto-imports.d.ts') is included in tsconfig.json's 'include' array.","cause":"Type declarations not generated or not included in tsconfig.","error":"TypeScript error: 'ref' is not defined"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}