クイックリファレンス

Browserify JavaScript バンドラーチートシート

クラシックなCommonJSモジュールバンドラー「Browserify」のアーカイブガイド:CLIオプション、トランスフォーム、Node.js API構文。

· 公開日

[!NOTE] Browserify は、Node.js の require() 構文と CommonJS 仕様をブラウザ環境に持ち込んだ初期の代表的モジュールバンドラーです。現代のWeb開発では Vite、esbuild、Rollup、webpack 等が主流です。

CLI コマンド構文

# 基本的なバンドル出力
browserify input.js -o output.js

# Transform プラグインの適用
browserify input.js -o bundle.js -t babelify

# デバッグ用ソースマップ(Source Maps)の生成
browserify input.js -o bundle.js --debug

# 独立した UMD バンドルの生成
browserify input.js -s MyLibrary -o bundle.js

# モジュールの除外、無視、または外部ライブラリ参照指定
browserify input.js -u react     # --exclude
browserify input.js -x react     # --external
browserify input.js -i react     # --ignore

JavaScript API 連携

const browserify = require('browserify');
const fs = require('fs');

const b = browserify('src/main.js', { debug: true });

b.transform('babelify', { presets: ['@babel/preset-env'] });

b.bundle().pipe(fs.createWriteStream('dist/bundle.js'));

主要なエコシステム・トランスフォーム

  • babelify: 最新の ES6+ や JSX をブラウザ互換性のある ES5 にトランスパイル。
  • envify: process.env.NODE_ENV をリテラル文字列に置換し、デッドコードを自動削除。
  • brfs: ビルド時に fs.readFileSync の呼び出しを静的ファイル内容にインライン展開。
  • watchify: 開発中の差分更新を高速化するインクリメンタルファイル監視ツール。

関連テーマ