Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Mac AppStore patch for node-webkit

This patch is totally based on this work:

The original patch by @trevorlinton did not work with 0.11.5, so I fixed it for the newer version until node-webkit (or now nw) official repository gets updated with the proper changes, and buildbot slave is created for Mac AppStore executable.


node-webkit (now nw.js) executable cannot be submitted to Mac AppStore as is and needs to be tweaked is its Chromium part uses QuickTime and various deprecated / private APIs; this patch removes usage of QuickTime libraries and makes a few other changes that allow node-webkit to be submitted to AppStore. The binary from this repository was successfully submitted via Application Loader on Jan 14th, 2015.

It is further discussed here: nwjs/nw.js#936

Important Update

Latest review in January required to drop some more APIs, so I also had to patch the webkit located within node-webkit/src/third_party/WebKit to get it approved by App Store.

How to get node-webkit build accepted on Mac App Store

I figured out that Apple may be rejecting the latest located under libraries. If you do not use ffmpeg, you may delete the file from node-webkit Framework.framework/Libraries/ and resubmit.

If you do use ffmpeg, however, more investigations are necessary to submit it to App Store—it uses certain QtKit APIs that need removal as well (or rather, a conversion to AVFoundation).

The most recent binary of 0.11.5 was accepted by App Store without on January 26th 2015 (and once with it, too, earlier).

Submitting to App Store

To ensure successful submittion, you will need to:

  1. Delete the (if you're not using it, as explained above)
  • Edit the plist to match your app ID
  • Sign the code with the right entitlements that enable sandbox on it see here by @trevorlinton
  • Ensure you do not request the entitlements you do not need (like printing or etc., App Review team checks that)
  • Finally, create a package with productbuild tool on your Mac and upload to App Store for review.

Sandboxing Issues

Once sandboxed, the app may crash with deny forbidden-sandbox-reinit error. To fix that, please see this closed issue for details.


Temporary Mac AppStore patch for node-webkit






No releases published


No packages published