ImageGrid/Viewer/doc/BUILD-NOTES
Alex A. Naanou 5f47d6da7b restructured the repo moving the legacy out of the way...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2020-08-28 17:32:02 +03:00

82 lines
1.7 KiB
Plaintext
Executable File

Basic build
-----------
Default desktop electron app build (modifying the electron dist in-place):
make
Build desktop electron app with full repack:
(export BUILD_MODE=repack && make)
Build package files for web:
make web
Sharp and other native modules for nw/electron
----------------------------------------------
To build sharp for a specific version of node and nwjs:
cd ./node_modules/sharp/
nw-gyp rebuild --target=0.17.4 --arch=x64
And for electron (done by make):
electron-rebuild
Chromium flicker issue (nw)
---------------------------
The UI sometimes flickers -- at first blanks out to black then re-draws,
this is most noticeable on white or gray backgrounds.
This appears to be GPU related.
package.json:
"chromium-args": "--disable-gpu-compositing",
This will fix the issue temporarily, but we still need a better solution.
Remote debugging via DevTools (nw)
----------------------------------
Set this in package.json:
"chromium-args": "--remote-debugging-port=9222",
Then open http://localhost:9222 in chrome.
Speedup loading of app (nw)
---------------------------
One of the ways to speed up the load times when packed is to store Node's
modules ./node_modules in a separate location, outside of the app.zip
or package.nw
To enable require(..) to find them:
- > npm install --save app-module-path
- when building the zip move all the modules out to a new location
*except* app-module-path
- add this line to all root js modules *before* any other
require(..) is called:
if(process.__nwjs){
var path = require('path')
require('app-module-path')
.addPath(path.dirname(process.execPath)
+ '/node_modules/')
}