I will use the example from my tutorial.
Install electron-packager:
1 | \nodejs\electronapp>npm install electron-packager --save-dev |
You need to add and modify the scripts below into your package.json:
1 2 3 4 5 6 7 8 9 10 11 12 | "electron-packager": "^8.1.0" }, "scripts": { "package-mac": "electron-packager . --overwrite --platform=darwin --arch=x64 --icon=assets/icons/mac/ icon.icns --prune=true --out=release-builds", "package-win": "electron-packager . electron-tutorial-app --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName=\"TutorialApp\"", "package-linux": "electron-packager . electron-tutorial-app --overwrite --asar=true --platform=linux --arch=x64 --icon=assets/icons/png/1024x1024.png --prune=true --out=release-builds" } |
You can create these folders: assets, icons, win, mac and png, see:
1 2 3 4 5 6 7 | \nodejs\electronapp>mkdir assets \nodejs\electronapp>cd assets \nodejs\electronapp\assets>mkdir icons \nodejs\electronapp\assets>cd icons \nodejs\electronapp\assets\icons>mkdir win \nodejs\electronapp\assets\icons>mkdir mac \nodejs\electronapp\assets\icons>mkdir png |
You need one icon file with this extension .png, .ico and .icns for each folder.
You can find many icons at iconarchive.com.
This is my package.json I used to build windows application.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | { "name": "electronapp", "version": "1.0.0", "description": "this is the first application with electron ", "main": "mainapp.js", "scripts": { "start": "electron ." }, "author": "catafest", "license": "ISC", "dependencies": { "electron": "^2.0.7" }, "devDependencies": { "electron-packager": "^12.1.0" }, "scripts": { "package-mac": "electron-packager . --overwrite --platform=darwin --arch=x64 --icon=assets/icons/mac/icon.icns --prune=true --out=release-builds", "package-win": "electron-packager . electronapp --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName=\"ElectronApp\"", "package-linux": "electron-packager . electronapp --overwrite --asar=true --platform=linux --arch=x64 --icon=assets/icons/png/1024x1024.png --prune=true --out=release-builds" } } |
Use this command to create the windows application:
1 | npm run package-win |
The output windows application will be created into this folder:
1 | \nodejs\electronapp\release-builds\electronapp-win32-ia32 |
If you need this application for Mac, use:
1 | npm run package-mac |
For Linux use this command:
1 | npm run package-linux |