At a Node.js Interactive North America event today, the Node.js Foundation took a significant step toward achieving the goal of virtual machine neutrality by demonstrating a proof of concept implementation of a Node.js API Stable Module Application Programming Interface (NAPI) that makes it possible to deploy Node.js applications on top of multiple types of virtual machines.
Based on JavaScript, Node.js applications today can already run on top of multiple virtual machines. But porting applications between them requires significant work on the part of the developer. Todd Moore, vice president of open technology at IBM, says NAPI is intended to allow IT vendors to continue to innovate at the virtual machine level in a way that doesn’t disrupt Node.js applications.
Moors says this approach will also make it possible for Node.js developers to take advantage of different types of virtual machines optimized for everything from high-performance computing (HPC) applications to Internet of Things (IoT) environments.
“We think there’s a lot of room for innovation at the virtual machine level,” says Moore.
In addition to NAPI, The Node.js Foundation revealed it is working on adding support for a ChakraCore JavaScript engine that was originally developed by Microsoft for use in Internet Explorer 9. Since then, Microsoft has made ChakraCore available as open source code.
Finally, Node.js Foundation announced today that it has created a set of NodeSource Certified Modules that are a curated edition of Node.js that developers can be assured are secure instances of the development platform that can run across multiple platforms. Node.js Foundation also revealed it is taking over responsibility for a Node.js Security Project that provides continuous monitoring for security flaws in Node.js applications.
Node.js may not be as mature as languages such as Java. But as the dominant form of JavaScript, it’s clear that usage of Node.js in both client and server-side applications has been increasing rapidly. The challenge is making sure all the investments in those applications are made as extensible as possible.