Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
MAS: Packaging your app
Getting the custom NW.js app
NW.js offers a custom build that can be submitted to Mac App Store. This custom built version excludes the use of various obsolete and private APIs utilized by Chromium and WebKit. For more details, please see Mac App Store (MAS) Submission Guideline.
Note: NW.js Mac App Store support is in beta. Links will be updated.
Custom build limitations
The custom build completely disables the use of QTKit, which is used by Chromium for video streaming. Until Chromium moves on from QTKit over to AVFoundation, WebRTC applications will not work on this custom build.
Package your app by following the regular NW.js procedure (if you don't know how to do it, check the official documentation page).
Roughly, you have to:
- Rename your app root directory (the one containing the
- Move this directory to
- Rename the app to what you want - let's assume it is
To ensure proper validation, you have to check those steps:
Delete the FFMPEG library:
rm "YourApp.app/Contents/Frameworks/nwjs Framework.framework/Libraries/ffmpegsumo.so"
Note: Currently, FFMPEG library cannot be submitted to Mac App Store as is. More porting work is required to make it available for Mac App Store. Please use issues to request this, and it will be worked on in the future versions of NW.js.
.DS_Store files that may have been generated when you were working on your app:
cd YourApp.app && find . -name "*.DS_Store" -type f -delete
crash_inspector file, if it exists in your app: