Microsoft today announced plans to open source the core components of Chakra, the company’s JavaScript engine that’s used in Microsoft Edge and Internet Explorer. The project, dubbed ChakraCore, will be released on GitHub in January (although initially it will be Windows-only).
Aside from powering Microsoft’s browsers, Chakra also helps power Azure DocumentDB, Cortana, Outlook.com, TypeScript, Node.js in Windows 10 IoT Core, as well as universal Windows 10 applications across Xbox consoles, smartphones, and PCs.
As for ChakraCore, Microsoft describes the new initiative as “a fully-fledged, self-contained JavaScript virtual machine that can be embedded in derivative products and power applications that need scriptability.” The fully supported and open source project will include everything needed to parse, interpret, compile, and execute JavaScript code without relying on Edge.
ChakraCore does not expose Chakra’s private bindings to the browser or the Universal Windows Platform and supports a new set of platform-agnostic diagnostic APIs. These could be standardized or made interoperable across different implementations — Microsoft doesn’t specify which way it might lean, but it does plan to eventually make them available in Chakra.
Speaking of next steps, Microsoft is committing to bringing ChakraCore to other platforms “in the future.” The company is asking developers to share which platforms they want to see ChakraCore supported on, and to help port it.
Next month, Microsoft will provide details on its initial priorities for the open-source project. The company is hoping the community will clone the repository, inspect the code, build it, and contribute “everything from new functionality to tests or bug fixes.”
Microsoft will also be taking suggestions on how to improve ChakraCore for “particular scenarios that are important to you or your business.” Indeed, several organizations have already expressed interest in contributing to ChakraCore, including Intel, AMD, and NodeSource.
Microsoft expects ChakraCore to be deployed in anything from cloud-based services to the Internet of Things. The company specifically named NoSQL databases, productivity software, and game engines.
Redmond naturally points to its own internal benchmark tests to show how far Chakra has come with the launch of Windows 10. Our own benchmarks of Edge show the browser can indeed compete with Google Chrome and Mozilla Firefox.
Microsoft notes that Chakra supports most of the ECMAScript 2015 (ES6) features and also supports asm.js. Furthermore, the team is a key participant in helping evolve WebAssembly.
This sets the stage for what Microsoft is hoping to achieve with ChakraCore: Accelerate the development of its JavaScript engine, with a focus on improving performance and adding new features. And it wants your help to do it.