electron-node-loader
This Webpack modules allows you to load a native Node.js C++ addon that can be shipped inside an Electron application.
Usage:
Let's picture an application folder:
project/
├── dist/
├── src/
│ └── main.js
└── scripts/
└── addon.node
From your JavaScript code, you should be importing your custom module that way:
; ... addon;
When building your Electron app during development, add this rule to your Webpack config file:
loaders: test: /\.node?$/ use: loader: 'electron-node-loader' options: folder: 'scripts'
If you're using electorn-builder
for production, just add prod: true
to the options
object of the loader. You also need to add these lines in your package.json
:
"files": ,"extraResources":
That way, your native addons with be shipped in a special resources
directory inside of your app and your production JavaScript will be looking for them at runtime with a relative path.