

inline-cpp
Inline C++ with Node.js
Installation
npm install --save inline-cpp
or
npm install -g inline-cpp
Was tested on Linux and Windows. MacOS should also work.
Usage
const compile = require('inline-cpp');
const hello = compile `
String func(const CallbackInfo& info) {
return String::New(info.Env(), "Hello world from C++!");
}
`
console.log(hello())
Now run it:
➜ node test.js
Hello world from C++!
The first time you run the script, it takes longer time to execute.
For each inline block of code, a native module will be generated, compiled with node-gyp and loaded dynamically.
The next time you run the script, it will reuse previous build results (unless you change the inline C++ code). The build results are cached.
For more C++ code examples, see node-addon-api
API
inline-cpp supports several invocation methods.
Pass some code as string to build it with default options.
const InlineCPP = require('inline-cpp');
InlineCPP('code')
You can also pass code using tagged template syntax.
InlineCPP `code`
Pass an object to create a new compiler with custom options.
Options will get passed to node-gyp target.
const customCompiler = InlineCPP({ ... })
Disclaimer
This is just a prototype. I created this to check the general concept.
You're welcome to contribute! Here are some ideas:
Debugging
You can enable debug output by setting env. variable: DEBUG=inline-cpp