bower-main

Get bower main files in both normal and in minimized formats (if available in package)

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
bower-main
650.2.147 years ago8 years agoMinified + gzip package size for bower-main in KB

Readme

bower-main
Made to be used with Gulp. Based on asset type, get bower main files as normal file names array and as minimized file names array. If no minified version is found for some files, these file names will be available as a 3rd array so you can minify them yourself. The order of the files is as set in bower.json.
It uses main-bower-files, manipulates the result and checks for the availability of a minimized version (in the bower package).

Installation

npm install --save-dev bower-main

Usage

Require the module and get a set of asset files by giving two paramenters: First paramenter is the non-mimified file extension, like 'js' or 'css'. Second parameter (optional) is the minified file extension, like 'min.js' or 'min.css'. Here is a usage with JavaScript files:
var bowerMain = require('bower-main');
var bowerMainJavaScriptFilesObject = bowerMain('js','min.js');

var normalJavaScriptFileNamesArray           = bowerMainJavaScriptFilesObject.normal;
var minifiedJavaScriptFileNamesArray         = bowerMainJavaScriptFilesObject.minified;
var minifiedJavaScriptFileNamesNotFoundArray = bowerMainJavaScriptFilesObject.minifiedNotFound;

Example with Gulp

Again, the example uses JavaScript files:
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var merge2 = require('merge2');
var bowerMain = require('bower-main');

var bowerMainJavaScriptFiles = bowerMain('js','min.js');

gulp.task('vendorScriptsDevelopment', function() {
  return gulp.src(bowerMainJavaScriptFiles.normal)
    .pipe(concat('vendor-scripts.js'))
    .pipe(gulp.dest('dev'))
});

gulp.task('vendorScriptsProduction', function() {
  return merge2(
    gulp.src(bowerMainJavaScriptFiles.minified),
    gulp.src(bowerMainJavaScriptFiles.minifiedNotFound)
      .pipe(concat('tmp.min.js'))
      .pipe(uglify())
  )
    .pipe(concat('vendor-scripts.min.js'))
    .pipe(gulp.dest('dist'))
});

Issues

If you find a bug, have a feature request or similar, then create an issue on https://github.com/frodefi/bower-main/issues.

LICENSE

MIT © Frode Fikke