Registry / devops / esbuild-import-plugin

esbuild-import-plugin

JSON →
library0.0.15jsnpmunverified

An esbuild plugin that transforms import statements for enhanced module resolution and aliasing. Version 0.0.15, last updated in 2022, with sporadic maintenance. It provides a simple API to customize how imports are resolved during bundling, supporting option overrides for prefixes and base directories. Unlike more complex solutions like alias plugins, this plugin focuses on lightweight import manipulation without requiring extensive configuration. Its release cadence is low, with only a few versions published.

npm install esbuild-import-plugin
INSTALL
IMPORT
SIG · ESBUILD-IMPORT-PLU
E
esbuild-import-plugin
devopsjavascriptv0.0.15
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default (importPlugin)
import importPlugin from 'esbuild-import-plugin'
const importPlugin = require('esbuild-import-plugin')
Package does not export named members; the default export is a function. CJS require works but breaks in ESM environments.
importPlugin function
import importPlugin from 'esbuild-import-plugin'
const { importPlugin } = require('esbuild-import-plugin')
Destructuring from require will yield undefined because there is no named export.
Options (optional)
importPlugin({ prefix: '@', baseDir: './src' })
importPlugin({ prefix: '/@', basedir: './src' })
Options are passed as object to default function; property names are 'prefix' and 'baseDir' (camelCase). Incorrect casing or extra slash will cause mismatched resolution.

Shows how to use esbuild-import-plugin with esbuild to bundle an entry point, applying the import plugin with default settings.

import esbuild from 'esbuild'; import importPlugin from 'esbuild-import-plugin'; await esbuild.build({ entryPoints: ['./src/index.js'], bundle: true, outfile: './dist/app.js', loader: { '.js': 'jsx' }, sourcemap: true, target: ['chrome58', 'firefox57', 'safari11', 'edge16'], define: { 'process.env.NODE_ENV': '"development"' }, plugins: [importPlugin()], }); console.log('Build complete.');
Debug
Known issues
gotchaPlugin may not resolve imports with custom prefixes correctly if options are not provided.
fix
Always call importPlugin() with explicit options matching your project structure.
affects: >=0.0.0
deprecatedPackage has not been updated since 2022; may not work with newer esbuild versions.
fix
Consider using esbuild's built-in alias support or more maintained plugins like esbuild-plugin-alias.
affects: >=0.0.0
gotchaImport resolution fails silently if prefix or baseDir options are mismatched, leading to runtime errors.
fix
Verify that baseDir is absolute or relative to project root, and prefix matches the import strings.
affects: >=0.0.0
Errors
Common errors & fixes
Error: Cannot find module 'esbuild-import-plugin'
Package not installed or incorrectly required.
fix
Run npm install esbuild-import-plugin or yarn add esbuild-import-plugin.
TypeError: importPlugin is not a function
Using destructured import instead of default import.
fix
Use import importPlugin from 'esbuild-import-plugin' or const importPlugin = require('esbuild-import-plugin').default.
Error: Build failed with 1 error: error: Could not resolve '@components/Button'
The plugin's import resolution did not match the configured prefix or baseDir.
fix
Ensure importPlugin is called with options that map '@' to the correct base directory, e.g., importPlugin({ prefix: '@', baseDir: './src' }).
Upgrade
Version history
0.0.15latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
2 hits · last 30 days
node
2
Resources
esbuild-import-plugin — npm install esbuild-import-plugin · libregistry