[webkit-dev] node-jsc: A node.js port to the JavaScriptCore engine and iOS

Koby Boyango koby.b at mce.systems
Thu Sep 13 16:02:51 PDT 2018


Hi,

I'm Koby Boyango, a senior researcher and developer at mce, and I've
created node-jsc <https://github.com/mceSystems/node-jsc>, an experimental
port of node.js to the JavaScriptCore engine and iOS specifically.

node-jsc's core component, "jscshim" (deps/jscshim)
<https://github.com/mceSystems/node-jsc/tree/master/deps/jscshim>,
implements (parts of) v8 API on top of JavaScriptCore. It contains a
stripped down version of WebKit's source code (mainly JSC and WTF). To
build WebKit, I'm using CMake to build the JSCOnly port, with JSC\WTF
compiled as static libraries. For iOS I'm using my own build script
<https://github.com/mceSystems/node-jsc/blob/master/deps/jscshim/tools/build_jsc.py>
with a custom toolchain file
<https://github.com/mceSystems/node-jsc/blob/master/deps/jscshim/tools/ios.toolchain.cmake>.


The project also includes node-native-script
<https://github.com/mceSystems/node-native-script>, NativeScript's iOS
runtime refactored as node-jsc native module, allowing access to native iOS
APIs directly from javascript.

So first of all, I wanted to share this project with the WebKit developer
community.
It's my first time working with WebKit, and node-jsc has been a great
opportunity to experiment with it.

Second, as I needed to make some minor changes\additions, I'm using my own
fork <https://github.com/mceSystems/webkit>. I would love to discuss some
of the changes I've made, and offer some patches if you'll find them
useful.
"WebKit Fork and Compilation
<https://github.com/mceSystems/node-jsc/blob/master/deps/jscshim/docs/webkit_fork_and_compilation.md>"
describes WebKit's usage in node-jsc and the major changes\additions I've
made in my fork (node-jsc's README
<https://github.com/mceSystems/node-jsc/blob/master/README.md> and jschim's
documentation
<https://github.com/mceSystems/node-jsc/blob/master/deps/jscshim/docs/jscshim.md>
contains some more information).

Besides that, I will appreciate any opinions\ideas\insights\suggestions :)

Koby
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20180914/08105a0b/attachment.html>


More information about the webkit-dev mailing list