Call all Node.js modules directly from DOM and enable a new way of writing applications with all Web technologies. ⛺
Branch: menus
Clone or download
Pull request Compare This branch is 13 commits ahead, 2214 commits behind nwjs:nw36.
Type Name Latest commit message Commit time
Failed to load latest commit information.
tests Update tests instructions Feb 23, 2014
tools [test] update test case for building native modules(node-dtrace-provi… Dec 16, 2013
.gitignore [test] different method of starting app Jan 22, 2013
.whitesource Initial WhiteSource configuration file Feb 11, 2019
AUTHORS Add self to AUTHORS Mar 21, 2014
LICENSE [README] New download URL Mar 17, 2014
nw.gypi [WIN] fix build error: invalid file or disk full Feb 20, 2014


node-webkit is an app runtime based on Chromium and node.js. You can write native apps in HTML and Javascript with node-webkit. It also lets you call Node.js modules directly from the DOM and enables a new way of writing native applications with all Web technologies.

It's created and developed in the Intel Open Source Technology Center.

Introduction to node-webkit (slides)
Creating Desktop Applications With node-webkit
WebApp to DesktopApp with node-webkit (slides)


  • Apps written in modern HTML5, CSS3, JS and WebGL.
  • Complete support for Node.js APIs and all its third party modules.
  • Good performance: Node and WebKit runs in the same thread: Function calls are made straightforward; objects are in the same heap and can just reference each other;
  • Easy to package and distribute apps.
  • Available on Linux, Mac OSX and Windows


v0.9.2 release notes

Prebuilt binaries (v0.9.2 - Feb 20, 2014):

If your native Node module works only with Node v0.10, then you should use node-webkit v0.8.x, which is also a maintained branch. More info
v0.8.5 release notes

Prebuilt binaries (v0.8.5 - Feb 26, 2014):

Looking for older versions?

###Demos and real apps You may also be interested in our demos repository and the List of apps and companies using node-webkit.

Quick Start

Create index.html:

<!DOCTYPE html>
    <title>Hello World!</title>
    <h1>Hello World!</h1>
    We are using node.js <script>document.write(process.version)</script>.

Create package.json:

  "name": "nw-demo",
  "main": "index.html"

Compress index.html and package.json into a zip archive called app.nw:

$ zip app.nw index.html package.json

This should create a structure like this:

|-- package.json
`-- index.html

Download the prebuilt binary for your platform and use it to open the app.nw file:

$ ./nw app.nw

Note: on Windows, you can drag the app.nw to nw.exe to open it.


For more information on how to write/package/run apps, see:

And our Wiki for much more.


We use the node-webkit group as our mailing list (use English only). Subscribe via Issues are being tracked here on GitHub.

You can chat with us on IRC in the ##node-webkit channel on


node-webkit's code in this repo uses the MIT license, see our LICENSE file. To redistribute the binary, see How to package and distribute your apps