gulp-bower-src 
Gulp-src bower components files
gulp.src files from your bower components directory, using your bower.json configuration file.
Bower expects package maintainers to add "ignore" attributes to their JSON
(see reference), so you don't have to pull all files from dependencies.
"ignore" attributes aren't always set - gulp-bower-src also get that information from your local overrides, which
is currently under discussion in the bower community.
For the time being, this gulp plugin does not support negate glob patterns in ignore. See issue isaacs/node-glob#62.
Install with npm
npm install --save-dev gulp-bower-src
{
"name": "myapp",
"description": "My wonderful application",
"dependencies": {
"foo": "~2.1",
"bar": "~1.0",
"baz": "*"
},
"overrides": {
"foo": {
"ignore": ["test/**"]
},
"bar": {
"ignore": ["dist/**", "src/**"]
}
}
}Simply copy resources to dist/lib
var gulp = require('gulp');
var bowerSrc = require('gulp-bower-src');
gulp.task('default', function () {
bowerSrc()
.pipe(gulp.dest('dist/lib'));
});Copy resources to dist/lib and uglify non-minified JavaScript files on the fly
var gulp = require('gulp');
var gulpFilter = require('gulp-filter');
var bowerSrc = require('gulp-bower-src');
var uglify = require('gulp-uglify');
var filter = gulpFilter('**/*.js', '!**/*.min.js');
gulp.task('default', function () {
bowerSrc()
.pipe(filter)
.pipe(uglify())
.pipe(filter.restore())
.pipe(gulp.dest('dist/lib'));
});