Live editing development on desktop app
Electron application boilerplate based on React, React Router, Webpack, React Trasform HMR for rapid application development
Install dependencies.
$ npm install
Run this two commands simultaniously in different console tabs.
npm run hot-server
npm run start-hot
If you use any 3rd party libraries which can't be built with webpack, you must list them in your webpack.config.base.js
:
externals: [
// put your node 3rd party libraries which can't be built with webpack here (mysql, mongodb, and so on..)
]
You can find those lines in the file.
Import css file as css-modules using .module.css
.
npm run package
- --name, -n: Application name (default: ElectronReact)
- --version, -v: Electron version (default: latest version)
- --asar, -a: asar support (default: false)
- --icon, -i: Application icon
- --all: pack for all platforms
Use electron-packager
to pack your app with --all
options for darwin (osx), linux and win32 (windows) platform. After build, you will find them in release
folder. Otherwise, you will only find one for your os.
test
, tools
, release
folder and devDependencies in package.json
will be ignored by default.
We add some module's peerDependencies
to ignore option as default for application size reduction.
babel-core
is required bybabel-loader
and its size is ~19 MBnode-libs-browser
is required bywebpack
and its size is ~3MB.
Note: If you want to use any above modules in runtime, for example:
require('babel/register')
, you should move them formdevDependencies
todependencies
.
Please checkout Building windows apps from non-windows platforms.
If you want to have native-like User Interface (OS X El Capitan and Windows 10), react-desktop may perfect suit for you.
MIT © C. T. Lin