Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–223 runs
build_error
glibcnode 18–223 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
visualizer
✓ import { visualizer } from 'esbuild-visualizer'
✗ import visualizer from 'esbuild-visualizer'
The package exposes a named export 'visualizer', not a default export.
visualizer
✓ const { visualizer } = require('esbuild-visualizer')
✗ const visualizer = require('esbuild-visualizer')
CommonJS require must destructure the named export.
type VisualizerOptions
✓ import type { VisualizerOptions } from 'esbuild-visualizer'
✗ import { VisualizerOptions } from 'esbuild-visualizer'
TypeScript users should use `import type` to avoid runtime import if not needed.
metafileName
✓ // Not imported; usage: visualizer({ metafile: './meta.json', ... })
✗ import { metafile } from 'esbuild-visualizer'
Options are passed as an object argument, not imported.
Builds an esbuild bundle with metafile, then generates an interactive treemap visualization HTML file.
import { visualizer } from 'esbuild-visualizer';
import { build } from 'esbuild';
async function analyze() {
const result = await build({
entryPoints: ['app.ts'],
bundle: true,
outfile: 'out.js',
metafile: true,
});
// Write metafile to disk
const fs = await import('fs');
fs.writeFileSync('meta.json', JSON.stringify(result.metafile));
await visualizer({
metafile: 'meta.json',
filename: 'stats.html',
title: 'My Bundle Analysis',
template: 'treemap', // 'treemap', 'sunburst', or 'network'
});
console.log('Visualization generated at stats.html');
}
analyze().catch(console.error);
esbuild-visualizer --version
Errors
Common errors & fixes
Error: Could not find file: /path/to/meta.json
The metafile path provided does not exist or is incorrect.
fixVerify the metafile path: visualizer({ metafile: './meta.json' }) after running esbuild with metafile: true. TypeError: visualizer is not a function
The visualizer is not imported correctly; default import was used instead of named import.
fixUse: import { visualizer } from 'esbuild-visualizer'; Error: Unknown template 'circlepacking'
An invalid template name was passed.
fixUse one of: 'treemap', 'sunburst', 'network'.
Audit
Dependencies
esbuildoptionalRequires esbuild's metadata output (--metafile flag) to generate visualizations.