A static build plugin for moonboots.
A static build plugin for moonboots.
Just like Moonboots but it will put all the built files into a directory ready to be served statically.
To use as a module: npm install moonboots-static --save
Or to use it as a global CLI: npm install moonboots-static -g
var Moonboots = require('moonboots-static');
var moonboots = new Moonboots({
moonboots: {
main: __dirname + '/app/app.js'
},
// Contents from the public directory
// will be copied to the target directory
public: __dirname + '/public',
// Directory to build files into
directory: __dirname + '/_build',
// Log build items
verbose: true
});
moonboots.on('ready', function (err) {
if (err) {
// Oh no something went wrong
} else {
// Yay, we built our files!
}
});
To use it from the command line, provide a path to a config file as the first argument. The config file can be a .json
file or a .js
file that exports either an object or function that returns an object.
moonboots config.js
--quiet
Turn off any logging. It is on by default.
verbose
: Whether you want to log everything. Defaults tofalse
. Even if you don't turn this on you can still listen to the emittedlog
events with.on('log')
.directory
: The directory where you want to write your files.public
: A directory where the contents will becp -r
'd into thedirectory
after everything else is built.htmlSource
: A function with the signature(context)
that should return the HTML you wish to write to your HTML file. It will haveresourcePrefix
,cssFileName
, andjsFileName
set oncontext
. By default this will just use the default Moonboots HTML source.cb
: A callback that will be run after the build is complete. If there is anerr
it will be the first argumentt. If thiscb
is not provided,moonboots-static
will emit aready
event instead.moonboots
: This is an object that is passed directly to Moonboots. See the documentation for what options are available.
Run npm test
.
Run npm start
to see what files are built to sample/_build
using the sample/config.js
config file.
#License
MIT