[!NOTE] Browserify es un empaquetador de módulos de JavaScript de archivo que llevó el require() de Node.js y CommonJS al navegador. Las aplicaciones modernas suelen utilizar Vite, esbuild, Rollup o webpack.
Uso de la CLI
# Compilación básica del paquete
browserify input.js -o output.js
# Aplicar transformaciones (transforms)
browserify input.js -o bundle.js -t babelify
# Generar mapas de código fuente (source maps)
browserify input.js -o bundle.js --debug
# Generar paquete UMD independiente
browserify input.js -s MyLibrary -o bundle.js
# Excluir, ignorar o marcar módulos como externos
browserify input.js -u react # --exclude
browserify input.js -x react # --external
browserify input.js -i react # --ignore
API programática
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'));
Transformaciones populares del ecosistema
babelify: Transpila ES6+ moderno y JSX a ES5 compatible con navegadores.envify: Reemplaza process.env.NODE_ENV por literales para eliminación de código muerto.brfs: Incorpora llamadas fs.readFileSync con contenidos de archivos estáticos en tiempo de compilación.watchify: Observador de compilación incremental para reconstrucciones rápidas durante el desarrollo.