@liutsing/microbundle
v0.0.1
Published
A small Rollup-powered library bundler inspired by microbundle.
Maintainers
Readme
@liutsing/microbundle
A small Rollup-powered library bundler inspired by microbundle.
It builds TypeScript or JavaScript library entry points to ESM, CommonJS, and UMD outputs. Each format is emitted as readable and minified files by default, with sourcemaps and TypeScript declarations.
microbundle src/index.ts --format es,cjs,umd --name MyLibraryDefault outputs:
dist/index.mjsdist/index.min.mjsdist/index.jsdist/index.min.jsdist/index.umd.jsdist/index.umd.min.jstypes/index.d.ts
The bundler uses the consuming project's local typescript package when available. Dependencies, peer dependencies, optional dependencies, Node built-ins, and values passed through --external are treated as Rollup externals.
Minification
Minified files are generated with @rollup/plugin-terser only for .min.* outputs.
Readable outputs are written without terser.
Current terser call:
terser()This means @liutsing/microbundle does not currently pass custom terser options
such as drop_console, passes, ecma, keep_fnames, or property mangling.
The effective defaults are:
@rollup/plugin-terserenablessourceMapwhen Rollup sourcemaps are enabled.@rollup/plugin-terserpassesmodule: truefor ES output.@rollup/plugin-terserpassestoplevel: truefor CJS output.- UMD output uses Terser defaults plus sourcemap handling.
- Terser enables compression and identifier mangling by default.
- Terser does not mangle object property names by default.
- Terser does not drop
console.*by default. - Terser
compress.passesdefaults to1. - Terser
compress.unsafedefaults tofalse.
Use --no-minify or --no-compress to skip .min.* outputs.
