Registry / devops / esbuild-copy-files

esbuild-copy-files

JSON →
library0.2.16jsnpmunverified

esbuild-copy-files (v0.2.16) is an esbuild plugin that copies static files (like HTML, CSS, images) from source to output directory during esbuild builds. It integrates seamlessly with esbuild's plugin API, supports glob patterns for file selection, and is TypeScript-friendly with built-in types. Unlike using external copy tools, it runs within esbuild's build lifecycle, ensuring file copying happens at the right stage. Peer dependency on esbuild >= 0.14.0. The plugin is actively maintained with frequent releases.

npm install esbuild-copy-files
INSTALL
IMPORT
SIG · ESBUILD-COPY-FILES
E
esbuild-copy-files
devopsjavascriptv0.2.16
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
import copyFiles from 'esbuild-copy-files'
const copyFiles = require('esbuild-copy-files')
ESM-only export; CJS require works but no default export in CJS – use .default
copyFiles
import copyFiles from 'esbuild-copy-files'
import { copyFiles } from 'esbuild-copy-files'
The package exports a single default function; named export copyFiles does not exist
Plugin type
import type { Plugin } from 'esbuild'
TypeScript users should import esbuild Plugin type separately

Shows how to use the plugin in an esbuild build to copy files from public/ to dist/, excluding templates.

import * as esbuild from 'esbuild'; import copyFiles from 'esbuild-copy-files'; await esbuild.build({ entryPoints: ['src/index.js'], bundle: true, outdir: 'dist', plugins: [ copyFiles({ include: ['public/**/*'], exclude: ['public/templates/**'], outputDir: 'dist' }) ] }); console.log('Build complete with static files copied.'); // Output: dist/index.js, dist/style.css, dist/images/...
Debug
Known issues
gotchaPlugin copies files after build finishes; may overwrite existing files if output directory isn't clean.
fix
Clean outputDir before build or use a unique suffix.
affects: *
deprecatedOptions 'watch' and 'inline' are no longer supported in recent versions (removed in v0.2.x).
fix
Remove 'watch' and 'inline' options; use esbuild's built-in watch mode.
affects: >=0.2.0
gotchaDefault export may require .default in CJS environments.
fix
Use const copyFiles = require('esbuild-copy-files').default;
affects: *
Errors
Common errors & fixes
Error: The plugin 'esbuild-copy-files' must be used with esbuild version >= 0.14.0
Installed esbuild version is too old.
fix
Run 'npm install esbuild@latest' to upgrade esbuild.
TypeError: copyFiles is not a function
Misunderstood default vs named import.
fix
Use 'import copyFiles from ...' (default import) instead of '{ copyFiles }'.
Error: Cannot find module 'esbuild-copy-files'
Package not installed or not imported correctly.
fix
Run 'npm install esbuild-copy-files' and check import path.
Upgrade
Version history
0.2.16latest on npm
Audit
Dependencies
esbuildrequiredpeer dependency – required for plugin API
Agent activity
2 hits · last 30 days
node
2
Resources
esbuild-copy-files — npm install esbuild-copy-files · libregistry