Skip to content
Call all Node.js modules directly from DOM and enable a new way of writing applications with all Web technologies.
C++ JavaScript HTML Objective-C++ Python Objective-C Other
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


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

Something went wrong with that request. Please try again.