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/')
		}




