Command line tool for building, testing and publishing modern Electron applications
Bozon is a simple, easy to use tool that unifies the existing build tools for Electron development. Simplify building, compiling, running, testing, and packaging your Electron applications.
- Scaffolding - Generate ready to use project structure for your new Electron application.
- Running - Run your electron application with Hot Reload in development environment.
- Testing - Build Application for test env and run feature tests for your Electron application.
- Packaging - Build, package and publish your Electron app for Mac, Windows and Linux platforms.
Bozon uses Webpack to bundle source code for main and renderer processes as well as preload script. It adds webpack.config.js file to your project so that you can further configure webpack, add new rules, loaders etc. Jest along with Spectron are used to run your unit and feature tests within real Electron application. For packaging and publishing applications bozon uses electron-builder under the hood.
npm install -g bozon
Bozon tool should be installed globally in order to be used for all your electron apps.
Then generate your new project:
bozon new [name]
This will create a new directory
[name] produce the following file structure:
--skip-installoption if you want to skip running
Starting an application
This will compile Application source code to
./builds/development directory and run your application from it.
Bozon provides a way to define environment specific and platform specific configuration options. These multiple config files are being merged into one single
config object during build. This
config object is accessible via
CONFIG variable in
main process files of your application, so that you can use it in your code.
|--config/ | |--settings.json | |--environments/ | | |--development.json | | |--production.json | | |--test.json | |--platforms/ | | |--mac.json | | |--linux.json | | |--windows.json
Bozon is using Jest and Spectron for testing Electron applications. Both unit and integration tests should go to
./test directory. Simply execute for running tests:
Packaging Electron application is done by electron-builder using settings in defined in
Application source code is being compiled to
./builds/production/ directory, and packaged versions for different platforms go to
bozon package [mac|windows|linux]
MIT © Alex Chaplinsky