{"id":13493422,"url":"https://github.com/nodejs/node-chakracore","last_synced_at":"2025-09-28T21:30:28.295Z","repository":{"id":38428196,"uuid":"46881155","full_name":"nodejs/node-chakracore","owner":"nodejs","description":"Node.js on ChakraCore :sparkles::turtle::rocket::sparkles:","archived":true,"fork":false,"pushed_at":"2019-12-21T12:00:40.000Z","size":429543,"stargazers_count":1925,"open_issues_count":94,"forks_count":341,"subscribers_count":146,"default_branch":"master","last_synced_at":"2025-08-28T23:33:45.015Z","etag":null,"topics":["node","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nodejs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2015-11-25T19:09:26.000Z","updated_at":"2025-08-27T19:15:54.000Z","dependencies_parsed_at":"2022-08-18T07:21:24.931Z","dependency_job_id":null,"html_url":"https://github.com/nodejs/node-chakracore","commit_stats":null,"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/nodejs/node-chakracore","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fnode-chakracore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fnode-chakracore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fnode-chakracore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fnode-chakracore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nodejs","download_url":"https://codeload.github.com/nodejs/node-chakracore/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodejs%2Fnode-chakracore/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276798701,"owners_count":25706906,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-24T02:00:09.776Z","response_time":97,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["node","nodejs"],"created_at":"2024-07-31T19:01:15.077Z","updated_at":"2025-09-28T21:30:23.284Z","avatar_url":"https://github.com/nodejs.png","language":"JavaScript","readme":"# Node.js on ChakraCore\n\nThis project enables Node.js to optionally use the\n[ChakraCore](https://github.com/Microsoft/ChakraCore) JavaScript engine. This\nproject is still **work in progress** and not an officially supported Node.js\nbranch. For more context into this project, please refer to the\n[original PR](https://github.com/nodejs/node/pull/4765).\n\n### How it works\n\nTo enable building and running Node.js with the ChakraCore JavaScript engine, a\nV8 API shim (ChakraShim) is created on top of the ChakraCore runtime hosting API\n([JSRT](https://github.com/Microsoft/ChakraCore/wiki/JavaScript-Runtime-(JSRT)-Overview).\nChakraShim implements the most essential V8 APIs so that the underlying\nJavaScript engine change is transparent to Node.js and other native addon\nmodules written for V8.\n\nA rebuild of node and native addon modules with ChakraCore is required for this\nto work.\n\n### Time Travel Debugging\nTime-Travel debugging is an exciting new addition to Node.js debugging, first\nintroduced in Node-ChakraCore, and now supported by\n[VSCode](https://github.com/microsoft/vscode/). We are developing in the open\nand want to share our progress to get feedback, bug reports, functionality\nrequests, and pull-requests from the community.\n\nCheck out this [Time-Travel Debugging](TTD-README.md)\npage to learn how to get started with TTD on Node-ChakraCore with VSCode.\n\n### Node.js API (NAPI)\nNode-ChakraCore is an active participant in the\n[ABI-Stable-Node](https://github.com/nodejs/abi-stable-node) project also called\nNAPI. The goal of this project is to ease the lives of native add-ons\ndevelopers, by providing a stable Node API which also guarantees stable ABI\nacross disparate Node versions. This allows native modules to just work across\ndifferent versions and flavors of Node.js without recompilations, reducing the\nmaintenance cost for module developers and thus improving compatibility.\n\nHead over to the [NAPI Project repo](https://github.com/nodejs/abi-stable-node)\nto learn more about it and ways to get involved.\n\n### Installing prebuilt Node-ChakraCore binaries\n\nYou can download and install stable prebuilt Node-ChakraCore from the\n[releases page](https://github.com/nodejs/node-chakracore/releases).\n\n_For installing Node-ChakraCore side-by-side your existing Node installation, we\nrecommend [Node Version Switcher (NVS)](https://github.com/jasongin/nvs)._\n\n```console\n$ nvs remote chakracore https://nodejs.org/download/chakracore-release/\n$ nvs add chakracore/latest\n$ nvs use chakracore\n```\n\nNightly builds of Node-ChakraCore are available at\n[https://nodejs.org/download/chakracore-nightly/](https://nodejs.org/download/chakracore-nightly/)\nPlease use the following instructions to install the nightly builds.\n\n```console\n$ nvs remote chakracore-nightly https://nodejs.org/download/chakracore-nightly/\n$ nvs add chakracore-nightly/latest\n$ nvs use chakracore-nightly\n```\n\n### Building Node-ChakraCore\n\nNode-ChakraCore can be built on Windows, Linux, and macOS.\n\nIf you are looking to build this yourself, here's what you will need.\n\n#### Windows\n\nPrerequisites:\n* Windows 7 SP1 or higher (Windows 8.1 or higher for ARM builds)\n* [Python 2.6 or 2.7](https://www.python.org)\n* [Visual Studio](https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx)\n\nBuild Command:\n```console\n\u003e vcbuild [x86|x64|arm]\n```\n\nTo run unit tests\n\n```console\n\u003e vcbuild nobuild test ignore-flaky [x86|x64|arm]\n```\n\nTo test if Node.js was built correctly with ChakraCore:\n\n```console\n\u003e node -e \"console.log('Hello from Node.js ' + process.jsEngine)\"\nHello from Node.js chakracore\n```\n\n#### Linux\n\nInstall building tools and ChakraCore dependencies:\nClang 3.7+ / CMake 3.2 are required\n\nDebian/Ubuntu:\n```console\n$ sudo apt-get install -y build-essential cmake clang libicu-dev\n```\n\nFedora:\n```console\n$ su\n$ dnf group install -y \"Development Tools\" \"C Development Tools and Libraries\"\n$ dnf install -y git cmake clang gcc gcc-c++ kernel-devel python llvm\n$ dnf install -y lttng-ust-devel.x86_64 libicu-devel.x86_64 libstdc++-static.x86_64\n```\n\nClone this repo and check out **`master`** branch:\n\n```console\n$ git checkout master\n```\n\nBuild:\n\n```console\n$ ./configure\n$ make\n```\n\nTo run unit tests:\n\n```console\n$ FLAKY_TESTS=dontcare make test\n```\n\nTo test if Node.js was built correctly with ChakraCore:\n\n```console\n$ node -e \"console.log('Hello from Node.js ' + process.jsEngine)\"\nHello from Node.js chakracore\n```\n\n#### macOS\n\nPrerequisites:\n* Xcode v7 or higher\n* [Homebrew](https://brew.sh/)\n\nInstall the building tools:\n\n```console\n$ xcode-select --install\n$ brew install cmake\n```\n\nClone this repo and check out **`master`** branch:\n\n```console\n$ git checkout master\n```\n\nBuild:\n\n```console\n$ ./configure\n$ make \n```\n\nTo test if Node.js was built correctly with ChakraCore:\n\n```console\n$ ./node -e \"console.log('Hello from Node.js ' + process.jsEngine)\"\nHello from Node.js chakracore\n```\n\n### Issues\n\nPlease report all issues related to Node-ChakraCore on our\n[issues page](https://github.com/nodejs/node-chakracore/issues).\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodejs%2Fnode-chakracore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnodejs%2Fnode-chakracore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodejs%2Fnode-chakracore/lists"}