{"id":26023,"library":"nuxt-esbuild-module","title":"nuxt-esbuild","description":"A Nuxt module that enables esbuild to transpile JavaScript and TypeScript, speeding up development builds. Current version 1.0.4. It uses esbuild-loader for fast transpilation during development, and optionally for TypeScript, while still applying Babel for production builds to ensure browser compatibility. Similar to Vite's approach. Provides faster dev builds compared to Babel-only or ts-loader setups.","status":"active","version":"1.0.4","language":"javascript","source_language":"en","source_url":"https://github.com/galvez/nuxt-esbuild-module","tags":["javascript","vue","vuejs","nuxt","typescript","esbuild"],"install":[{"cmd":"npm install nuxt-esbuild-module","lang":"bash","label":"npm"},{"cmd":"yarn add nuxt-esbuild-module","lang":"bash","label":"yarn"},{"cmd":"pnpm add nuxt-esbuild-module","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core loader for transpilation with esbuild","package":"esbuild-loader","optional":false}],"imports":[{"note":"Nuxt modules are added as strings in buildModules, not imported as functions.","wrong":"const NuxtEsbuild = require('nuxt-esbuild')","symbol":"nuxt-esbuild","correct":"import 'nuxt-esbuild'"},{"note":"For Nuxt 2, use buildModules to avoid running on production server. For Nuxt 3, use modules.","wrong":"modules: ['nuxt-esbuild']","symbol":"module registration","correct":"buildModules: ['nuxt-esbuild']"},{"note":"This module exports a function as default, not a named export.","wrong":"import { NuxtEsbuild } from 'nuxt-esbuild'","symbol":"default import","correct":"import NuxtEsbuildModule from 'nuxt-esbuild'"}],"quickstart":{"code":"// nuxt.config.js\nconst path = require('path')\n\nexport default {\n  buildModules: ['nuxt-esbuild'],\n  esbuild: {\n    loader: 'ts', // or 'js' for JavaScript only\n    tsconfigRaw: require(path.resolve(__dirname, 'tsconfig.json')),\n  },\n}","lang":"javascript","description":"Configure nuxt-esbuild module with TypeScript support in nuxt.config.js. Shows how to add module and specify esbuild options."},"warnings":[{"fix":"Do not rely on esbuild for production. Ensure Babel configuration is correct for production builds.","message":"esbuild is only used in development mode. Production builds use Babel for JavaScript.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Review Babel plugins and ensure they work with esbuild-transpiled code. Consider using only esbuild for TypeScript if possible.","message":"When using TypeScript, both esbuild and Babel will transpile code (esbuild first, then Babel). This may cause issues if Babel plugins are incompatible with esbuild's output.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Check Nuxt and Webpack versions. Upgrade if necessary.","message":"The module uses esbuild-loader, which requires Webpack 4 or 5 (Nuxt's default). Ensure compatibility with your Webpack version.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use modules: ['nuxt-esbuild'] for Nuxt 3.","message":"For Nuxt 3, the buildModules array is replaced by modules. Using buildModules in Nuxt 3 will cause a warning.","severity":"deprecated","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"npm install nuxt-esbuild and add 'nuxt-esbuild' to buildModules in nuxt.config.js","cause":"Package not installed or incorrect import path","error":"Module 'nuxt-esbuild' not found"},{"fix":"Upgrade Webpack to 4+ or use a compatible version of esbuild-loader","cause":"Using older Webpack version","error":"esbuild-loader requires Webpack 4 or higher"},{"fix":"Ensure tsconfig.json exists and path is correct, or omit tsconfigRaw if not needed","cause":"Missing or malformed tsconfigRaw option","error":"Cannot read property 'raw' of undefined"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}