
Security News
Axios Supply Chain Attack Reaches OpenAI macOS Signing Pipeline, Forces Certificate Rotation
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.
css-worklet-plugin
Advanced tools
Automatically compiles modules loaded in Web Workers:
CSS.paintWorklet.addModule('./foo.js');
^^^^^^^^^^
gets bundled using webpack
The best part? That worklet constructor works just fine without bundling turned on too.
npm install -D css-worklet-plugin
Then drop it into your webpack.config.js:
+ const CssWorkletPlugin = require('css-worklet-plugin');
module.exports = {
<...>
plugins: [
+ new CssWorkletPlugin()
]
<...>
}
worklet.js: (our worklet module)
class PaintStuff {
...
}
registerPaint('paint-stuff', PaintStuff);
main.js: (our demo, on the main thread)
CSS.paintWorklet.addModule('./worklet.js')
main.css:
.foo {
background-image: paint(paint-stuff);
}
In most cases, no options are necessary to use WorkerPlugin.
globalObjectWorkerPlugin will warn you if your Webpack configuration has output.globalObject set to window, since doing so breaks Hot Module Replacement in web workers.
If you're not using HMR and want to disable this warning, pass globalObject:false:
new WorkerPlugin({
// disable warnings about "window" breaking HMR:
globalObject: false
})
To configure the value of output.globalObject for WorkerPlugin's internal Webpack Compiler, set globalObject to any String:
new WorkerPlugin({
// use "self" as the global object when receiving hot updates.
globalObject: 'self' // <-- this is the default value
})
pluginsBy default, WorkerPlugin doesn't run any of your configured Webpack plugins when bundling worker code - this avoids running things like html-webpack-plugin twice. For cases where it's necessary to apply a plugin to Worker code, use the plugins option.
Here you can specify the names of plugins to "copy" from your existing Webpack configuration, or provide specific plugins to apply only to worker code:
module.exports = {
<...>
plugins: [
// an example of a plugin already being used:
new SomeExistingPlugin({ <...> }),
new WorkerPlugin({
plugins: [
// A string here will copy the named plugin from your configuration:
'SomeExistingPlugin',
// Or you can specify a plugin directly, only applied to Worker code:
new SomePluginToApplyOnlyToWorkers({ <...> })
]
})
]
<...>
}
Apache-2.0
FAQs
Webpack plugin to bundle CSS Worklet automagically.
The npm package css-worklet-plugin receives a total of 2 weekly downloads. As such, css-worklet-plugin popularity was classified as not popular.
We found that css-worklet-plugin 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
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.

Security News
Open source is under attack because of how much value it creates. It has been the foundation of every major software innovation for the last three decades. This is not the time to walk away from it.

Security News
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.