browser-module-concat
Node.js module concatenation library - for the browser
What is it?
This library exposes a single function that concatenates Node.js modules within a project. This can be used to obfuscate an entire project into a single file. It can also be used to write client-side JavaScript code where each file is written just like a Node.js module. This output file should execute correctly within a browser.
Install
npm install browser-module-concat
Usage
var modConcat = ;var outputFile = "./project/concatenated.js";;
API
var modConcat = require("browser-module-concat");
modConcat(entryModule, outputFile, [options,] cb)
entryModule
- the path to the entry point of the project to be concatenated. This might be anindex.js
file, for example.outputFile
- the path where the concatenated project file will be written.options
- Optional. An Object containing any of the following:-
outputStreamOptions
- Options passed tofs.createWriteStream
call when theoutputFile
is opened for writing. -
excludeFiles
- An Array of files that should be excluded from the project even if they were referenced by arequire(...)
.Note: These
require
statements should probably be wrapped in a try, catch block to prevent uncaught exceptions.
-
cb
- Callback of the formcb(err, files)
wherefiles
is an Array of files that have been included in the project.
Known limitations
- Dynamic
require()
statements don't work (i.e.require("./" + variable)
) __filename
and__dirname
don't work, as they make no sense within a browser- Basic functionality only. Not an alternative to browserify