Name: node-chakracore
Owner: Node.js Foundation
Description: Node.js on ChakraCore :sparkles::turtle::rocket::sparkles:
Created: 2015-11-25 19:09:26.0
Updated: 2018-01-18 07:38:30.0
Pushed: 2018-01-18 11:03:53.0
Size: 317185
Language: JavaScript
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
This project enables Node.js to optionally use the ChakraCore JavaScript engine. This project is still work in progress and not an officially supported Node.js branch. For more context into this project, please refer to the original PR.
To enable building and running Node.js with the ChakraCore JavaScript engine, a V8 API shim (ChakraShim) is created on top of the ChakraCore runtime hosting API (JSRT. ChakraShim implements the most essential V8 APIs so that the underlying JavaScript engine change is transparent to Node.js and other native addon modules written for V8.
A rebuild of node and native addon modules with ChakraCore is required for this to work.
Time-Travel debugging is an exciting new addition to Node.js debugging, first introduced in Node-ChakraCore, and now supported by VSCode. We are developing in the open and want to share our progress to get feedback, bug reports, functionality requests, and pull-requests from the community.
Check out this Time-Travel Debugging page to learn how to get started with TTD on Node-ChakraCore with VSCode.
Node-ChakraCore is an active participant in the ABI-Stable-Node project also called NAPI. The goal of this project is to ease the lives of native add-ons developers, by providing a stable Node API which also guarantees stable ABI across disparate Node versions. This allows native modules to just work across different versions and flavors of Node.js without recompilations, reducing the maintenance cost for module developers and thus improving compatibility.
Head over to the NAPI Project repo to learn more about it and ways to get involved.
You can download and install stable prebuilt Node-ChakraCore from the releases page.
For installing Node-ChakraCore side-by-side your existing Node installation, we recommend Node Version Switcher (NVS).
s remote chakracore https://nodejs.org/download/chakracore-release/
s add chakracore/latest
s use chakracore
Nightly builds of Node-ChakraCore are available at https://nodejs.org/download/chakracore-nightly/ Please use the following instructions to install the nightly builds.
s remote chakracore-nightly https://nodejs.org/download/chakracore-nightly/
s add chakracore-nightly/latest
s use chakracore-nightly
Node-ChakraCore can be built on Windows, Linux, and macOS.
If you are looking to build this yourself, here's what you will need.
Prerequisites:
Build Command:
build [x86|x64|arm]
To run unit tests
build nobuild test ignore-flaky [x86|x64|arm]
To test if Node.js was built correctly with ChakraCore:
de -e "console.log('Hello from Node.js ' + process.jsEngine)"
o from Node.js chakracore
Install building tools and ChakraCore dependencies: Clang 3.7+ / CMake 3.2 are required
Debian/Ubuntu:
do apt-get install -y build-essential cmake clang libicu-dev
Fedora:
f group install -y "Development Tools" "C Development Tools and Libraries"
f install -y git cmake clang gcc gcc-c++ kernel-devel python llvm
f install -y lttng-ust-devel.x86_64 libicu-devel.x86_64 libstdc++-static.x86_64
Clone this repo and check out master
branch:
t checkout master
Build:
configure
ke
To run unit tests:
AKY_TESTS=dontcare make test
To test if Node.js was built correctly with ChakraCore:
de -e "console.log('Hello from Node.js ' + process.jsEngine)"
o from Node.js chakracore
Prerequisites:
Install the building tools:
ode-select --install
ew install cmake
Clone this repo and check out master
branch:
t checkout master
Build:
configure
ke
To test if Node.js was built correctly with ChakraCore:
node -e "console.log('Hello from Node.js ' + process.jsEngine)"
o from Node.js chakracore
Please report all issues related to Node-ChakraCore on our issues page.