nw.js README

The project's README from github.com/nwjs/nw.js. As one markdown file: README.md.

node-webkit is renamed NW.js

Gitter
Official site: https://nwjs.io

Introduction

NW.js is an app runtime based on Chromium and node.js. You can write native apps in HTML and JavaScript with NW.js. 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 was created in the Intel Open Source Technology Center.

Building a Cross-platform Desktop App with NW.js
Creating Desktop Applications With node-webkit
WebApp to DesktopApp with node-webkit (slides)
Essay on the history and internals of the project

Features

Downloads

Demos and real apps

You may also be interested in our demos repository and the List of apps and companies using nw.js.

Quick Start

Create index.html:

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

Create package.json:

{
  "name": "nw-demo",
  "version": "0.0.1",
  "main": "index.html"
}

Run:

$ /path/to/nw .  (suppose the current directory contains 'package.json')

Note: on Windows, you can drag the folder containing package.json to nw.exe to open it.

Note: on OSX, the executable binary is in a hidden directory within the .app file. To run node-webkit on OSX, type:
/path/to/nwjs.app/Contents/MacOS/nwjs . (suppose the current directory contains 'package.json')

Documents

Official documentation: http://docs.nwjs.io/

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

And our Wiki for much more.

Community

We use the google group as our mailing list (use English only). Subscribe via [email protected].

NOTE: Links to the old google group (e.g. https://groups.google.com/forum/#!msg/node-webkit/doRWZ07LgWQ/4fheV8FF8zsJ) that are no longer working can be fixed by replacing node-webkit with nwjs-general (e.g https://groups.google.com/forum/#!msg/nwjs-general/doRWZ07LgWQ/4fheV8FF8zsJ).

Issues are being tracked here on GitHub.

The source code for NW.js and the daily development spans multiple repositories in this organization. This repository is for issue tracking, landing page, and part of the source code.

Verifying Binaries

Starting from 0.32.0 the stable and nightly download directories contain a SHASUMS256.txt file that lists the SHA checksums for each file available for download, as well as the checksums for the files inside the download package.

The SHASUMS256.txt can be downloaded using curl.

$ curl -O https://dl.nwjs.io/vx.y.z/SHASUMS256.txt

To check that a downloaded file matches the checksum, run it through sha256sum with a command such as:

$ grep nwjs-vx.y.z.tar.gz SHASUMS256.txt | sha256sum -c -

The stable releases (but not Nightlies) also have the GPG detached signature of SHASUMS256.txt available as SHASUMS256.txt.asc. You can use gpg to verify that SHASUMS256.txt has not been tampered with.

To verify SHASUMS256.txt has not been altered, you will first need to import the GPG key of NW.js maintainer to create releases. Use this command to import the key:

$ gpg --keyserver pool.sks-keyservers.net --recv-keys 78680FA9E21BB40A
(Key fingerprint is 1E8B EE8D 5B0C 4CBC D6D1  9E26 7868 0FA9 E21B B40A)

Next, download the SHASUMS256.txt.asc for the release:

$ curl -O https://dl.nwjs.io/vx.y.z/SHASUMS256.txt.asc

After downloading the appropriate SHASUMS256.txt and SHASUMS256.txt.asc files, you can then use gpg --verify SHASUMS256.txt.asc SHASUMS256.txt to verify that the file has been signed by an authorized member of the NW.js team.

Once verified, use the SHASUMS256.txt file to get the checksum for the binary verification command above.

License

NW.js'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

nw.js (nwjs/nw.js)

Searching Database…

41.1K ·GitHub
What is this?NW.js is an app runtime based on Chromium and Node.js that lets you write native desktop apps using HTML, CSS and JavaScript, calling Node.js modules directly from the DOM.
Is this a browser, a framework, or something else?It is a runtime: it bundles Chromium and Node.js into one process so your web app becomes a desktop executable, not a library you import into another app.
How do I get a basic app running?Create an index.html and a package.json in a folder, then run that folder with the nw/nwjs binary (or drag the folder onto nw.exe on Windows).
Do I need Node.js or Chromium installed separately?No, you just download the prebuilt NW.js binary for your OS, which already bundles its own Node.js and Chromium versions.
How do I know a downloaded binary hasn't been tampered with?Stable releases ship a SHASUMS256.txt with SHA256 checksums plus a GPG-signed SHASUMS256.txt.asc, which you verify with sha256sum and gpg against the maintainer's imported key.
Which operating systems does it run on?Linux (64bit/arm64), Windows (32bit/64bit) and Mac OS X 10.10+ (64bit), with a separate Legacy build for Windows XP and early OSX.
Why would I use NW.js instead of writing a normal web app in a browser?NW.js gives full Node.js API access from the DOM, so a web app can read/write files, spawn processes, and use native npm modules directly, something a regular browser sandbox forbids.
Does it support third-party npm modules?Yes, it has complete support for Node.js APIs and all its third-party modules inside the app's web pages.
Is there an SDK build and why would I want it?Yes, release notes point to a separate SDK build, typically used for development since it includes devtools and debugging support not present in the regular release build.
Where can I see real apps built with this?The project maintains a demos repository and a curated list of apps and companies using NW.js.
Creator
nwjs
Size
133.9 MB
Stars
41.1K
Updated
CommitOct 10
Age
14y
Commits · 90 Days