html-build
Utility script to build HTML documents - Appends scripts and styles, removes debug parts, append HTML partials, template options, etc.
Installation
Install this script as a dev dependency.
$ npm install html-build --save-dev
Usage
CLI
Add your build script to your package.json
scripts
:
Create a configuration file (more informations):
moduleexports = beautify: true prefix: "//some-cdn" relative: true basePath: false scripts: bundle: "scripts/*.js" "!**/main.js" main: "scripts/main.js" styles: bundle: "css/libs.css" "css/dev.css" test: "css/inline.css" sections: views: "views/**/*.html" templates: "templates/**/*.html" layout: header: "layout/header.html" footer: "layout/footer.html" data: // Data to pass to templates version: "0.1.0" title: "test" ;
Then run your script:
$ npm run build-html
Programmatically
var htmlBuild = ;htmlBuild;
Exemple
Using the configuration above, consider the following example html to see it in action:
grunt-html-build - Test Page <!-- build:style bundle --> <!-- /build --> <!-- build:style inline test --> <!-- /build --> <!-- build:section layout.header --> <!-- /build --> <!-- build:section recursive views --> <!-- /build --> <!-- build:section layout.footer --> <!-- /build --> <!-- build:remove --> <!-- /build --> <!-- build:remove dev --> <!-- /build --> <!-- build:script bundle --> <!-- /build --> <!-- build:process --> <!-- /build --> <!-- build:script inline main --> <!-- /build --> <!-- build:script inline noprocess main --> <!-- /build --> <!-- build:section optional test --> <!-- /build -->
After running the grunt task it will be stored on the samples folder as
grunt-html-build - Test Page ... ... ... ... ...
Processors
There 5 types of processors:
- script
- append script reference from configuration to dest file.
- style
- append style reference from configuration to dest file.
- section
- append partials from configuration to dest file.
- process
- process grunt template on the block.
- remove
- it will erase the whole block.
Release History
- 0.1.0 Initial Release