I ran the code written for node.js inside chrome-packaged applications and used modules published in npm using either a browser or webpack.
The only real difficult bit for me traditionally is to export functions for use by my web application, since you do not have access to require() . Usually I just create a special module that exports all the global characters that I want to receive, and use them as my entry point.
For example, using webpack, I would create a file called globals.js :
module.exports = exports = { a: require('a'), b: require('b'), ... }
Then create webpack.config.js :
module.exports = { context: __dirname + "/js", entry: { globals: [ "globals.js", ], }, output: { // Make sure to use [name] or [id] in output.filename // when using multiple entry points path: __dirname + "/js/generated", filename: "[name].bundle.js", chunkFilename: "[id].bundle.js", library: "[name]", libraryTarget: "umd", } };
Then I can package and include the generated package in my application and now use the global variable globals .
I'm not sure if Edge.js works, but I would not think it would be possible for a webpack / browser in a web / chrome application, because they do not support built-in bindings and interprocess communication is much different. I just don't know how this works.
(But you can probably implement your own interop with .net applications, using possibly another IPC)