npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

gulp-recipe-pipemin-build

v0.1.8

Published

Receipe for fast build using pipemin

Downloads

7

Readme

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