
Security News
New React Server Components Vulnerabilities: DoS and Source Code Exposure
New DoS and source code exposure bugs in React Server Components and Next.js: what’s affected and how to update safely.
gulp-smart-builder
Advanced tools
Do not repeat yourself! Turn on best practicies in your gulpfile in a few lines
Stop writing big gulpfile for every project! Stop thinking about gulp plugins and dependencies! Turn on best practicies in your gulpfile in a few lines with Gulp Smart Builder.
Gulp Smart Builder is configuration wrapper for gulp which provide plugins managements is more clear and change aspect from 'which micro-steps and what order should be applied for assets' to 'which assets should be processed and what features should applied to it'.
{
"name": "my-app",
"version": "1.0.0",
"main": "src/server.js",
"directories": {
"source": "src",
"destination": "dist",
"public": "dist/assets"
}
}
import gulp from 'gulp';
import packageConfig from './package.json';
import buildConfig from './build.config';
import SmartBuilder from 'gulp-smart-builder';
const builder = new SmartBuilder({
root: __dirname,
gulp: gulp,
// `directories` contains keys "source", "destination" and "public"
// which present a relative path according root of your project
directories: packageConfig['directories'],
// `config` should contain a map with asset (plugin name) as a key
// and options for this plugin as a value, see build.config.js
config: buildConfig
});
builder.run();
import objectAssignDeep from 'object-assign-deep';
let config = {
images: {
changed: true
},
styles: {
changed: true
},
swf: true,
templates: {
changed: true
},
webpack: {
dependencies: ['images', 'styles', 'swf', 'templates'],
configFile: './webpack.config.js',
entry: {
'index': './app-client.js',
'server': {
target: 'node',
file: './app-server.js'
}
},
publicPath: '/assets',
sourceMaps: 'inline',
devServer: {
hotModuleReplacement: true,
reactHotLoader: true,
host: 'localhost',
port: 3000
},
extractCSSToFile: false,
longTermCaching: false,
generateHTML: {
template: './templates/pages/index.html',
inject: true
},
bowerComponents: true
}
};
// Override configuration settings for PRODUCTION environment
if (process.env.NODE_ENV === 'production') {
objectAssignDeep(config, {
images: {
changed: false,
imagemin: true
},
styles: {
changed: false,
minify: true,
sourceMaps: 'external'
},
templates: {
changed: false,
htmlmin: true
},
webpack: {
uglify: true,
sourceMaps: 'external',
generateHTML: {
minify: true
}
});
}
export default config;
Not described yet.
Try to install fs-events module:
npm install fs-events
FAQs
Do not repeat yourself! Turn on best practicies in your gulpfile in a few lines
We found that gulp-smart-builder demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
New DoS and source code exposure bugs in React Server Components and Next.js: what’s affected and how to update safely.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.

Security News
GitHub has revoked npm classic tokens for publishing; maintainers must migrate, but OpenJS warns OIDC trusted publishing still has risky gaps for critical projects.