0.1.8 • Published 9 years ago

gulp-recipe-pipemin-build v0.1.8

Weekly downloads
1
License
ISC
Repository
github
Last release
9 years ago

gulp-recipe-pipemin-build Dependency Status

NPM

Container for fast project compilation with hooks, based on gulp-pipemin.

Tasks

build

deps: clean:dist

Build whole project into dist directory.

package

deps: build

Make zip package file ready for deployment.

clean:dist

Delete dist directory and its contents.

Configuration

Recipe specific

Sources

sources.index

mandatory flow: sources.index -> pipes.preBuild -> pipemin -> merge with build -> pipes.postMerge -> dest

Entry point html files (index.html) to be processed with gulp-pipemin.

example config:

sources.index = 'app/index.html';

sources.assets

mandatory flow: sources.assets -> pipes.asset* hook

Files that will be treated as assets for pipemin. Names of these files will be fed to glob paths in index.html. Superfluous files are left untouched, but will be loaded into memory during build.

example config:

sources.assets = [
    'app/bower_components/*/*.js',
    'app/bower_components/*/{dist,min,release}/*.{js,css}', // most of the generic bower modules
    sources.js, // include only when serving non-processed js files
    sources.css // include only when serving non-processed css files
    // do not include temp folder here
];

sources.build

flow: sources.build -> pipes.build* hook

Files that will be added to final build bypassing pipemin.

Paths

paths.pipeminDist

alias: paths.dist default: 'dist/'

Destination path for build task output directory.

paths.pipeminPackage

alias: paths.package default: 'package.zip'

Destination path for package task output file.

Tasks

tasks.pipeminBuild

alias tasks.build default 'build'

build task name.

tasks.pipeminPackage

alias tasks.package default 'package'

package task name.

tasks.pipeminCleanDist

alias: tasks.cleanDist default: 'clean:dist'

clean:dist task name.

Order

config.pipeminMinify

alias: config.order.minify default: 1000

Minification task order in build processing pipe.

Api

Provided Hooks

pipes.asset*

type: source flow: pipes.asset* -> pipemin's assetStream

Additional asset sources, good for injecting compiled files into index.html and minification process.

pipes.postAssets*

type: sequence

Do actions on files from pipes.asset* before piping them into pipemin.

pipes.build*

type: source flow: pipes.build -> pipes.postBuild -> merge with pipemin's output -> pipes.postMerge* -> dest

Additional build output files, bypasses the pipemin and goes straight to postBuild step.

pipes.preBuild*

type: sequence

Do actions on index just before feeding it into pipemin.

pipes.postBuild*

type: sequence

Do actions on files from pipes.build*. Example usage in gulp-recipe-pipemin-rev.

pipes.postMerge*

type: sequence

Do actions on all built files before outputing them to dist.

pipes.processJs*

type: sequence

Process js files gathered by pipemin from index.

pipes.processCss*

type: sequence

Process css files gathered by pipemin from index.

pipes.processHtml*

type: sequence

Process index files after resolving assets by pipemin.

Used Hooks

pipes.assetRaw

Sorts raw assets files by name and places into hook.

pipes.processJsMinify

Minify Js with uglify.

pipes.processCssMinify

Minify css with csso.

pipes.processHtmlMinify

Minify html