A simple webpack extension built in Typescript for running scripts during the emission phase in Webpack's compilation process.
Supports running bash / python / js script files! simply declare what shell to execute your script in!
Supports running scripts based on different compiler hook events. Currently support compiler hooks are as follows:
- onShouldEmit (
compiler.hooks.shouldEmit
) - onEmit (
compiler.hooks.emit
) - onAfterEmit (
compiler.hooks.afterEmit
)
To install from npm, run the following cmds:
npm i -D scripting-webpack-plugin
begin using in your webpack.config.js
file as so:
const ScriptingWebpackPlugin = require('scripting-webpack-plugin')
To install from github, run the following cmds:
git clone
Then install the dependencies:
npm i
You can now compile your Typescript files by using:
tsc
A simple ScriptingWebpackPlugin configuration looks like the following:
const ScriptingWebpackPlugin = require('scripting-webpack-plugin')
// ...
// Your Webpack Configuration...
// ...
plugins: [
new ScriptingWebpackPlugin({
scripts: {
onEmit: [{
script: './scripts/build/chrome/build.sh',
args: 'target=chrome'
},{
shell: 'node',
script: './scripts/build/chrome/crx.js'
}],
onShouldEmit: [{
script: './scripts/performance/performance.sh',
args: 'threshold=5000ms'
}]
},
shell: 'bash',
verbose: true
})
]
you can refer to the example webpack.config.js
build file for more help!
We welcome contributions to the project! Please read our Contributing Guidelines for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.