GithubHelp home page GithubHelp logo

timzzx / bozon Goto Github PK

View Code? Open in Web Editor NEW

This project forked from railsware/bozon

0.0 1.0 0.0 1.36 MB

Scaffold, Run, Test and Package Electron application with ease

License: MIT License

JavaScript 44.82% HTML 0.63% CSS 0.76% CoffeeScript 53.79%

bozon's Introduction

bozon

Scaffold, Run, Test and Package Electron application with ease

npm version img

What is Bozon?

Bozon is a single tool for handling different tasks being performed by multiple packages, which is used for building desktop applications with Electron. Simplify building, compiling, running, testing, and packaging your application.

  • Electron - build cross platform desktop apps with web technologies
  • Gulp - task runner that helps making all important processes with a single command
  • Webpack - building and packaging source code for renderer process done with webpack
  • spectron - Easily test your Electron apps using ChromeDriver and WebdriverIO
  • electron-builder - package and distribute your Electron app

img

Installation

npm install -g bozon

Bozon tool should be installed globally in order to be used for all your electron apps.

Scaffolding

Then generate your new project:

bozon new [name]

This will create a new directory [name] produce the following file structure:

  • Use --skip-install option if you want to skip running npm install
  |--app/
  |  |--images/
  |  |--javascripts/
  |  |  |--renderer/
  |  |  |--main/
  |  |--stylesheets/
  |  |--index.html
  |  |--package.json
  |--config/
  |--spec/
  |--gulpfile.js
  |--package.json

Starting an application

bozon start

This will compile Application source code to ./builds/development directory and run your application from it.

Configuration

Bozon provides a way to define environment specific and platform specific configuration options. These multiple config files are being merged into one single settings object during build. This settings object is being written into package.json file 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

Testing

Bozon is using spectron and mocha spec runner for testing Electron applications. Both unit and integration tests should go to ./specs directory. Simply execute for running tests:

bozon test

Packaging application

Packaging Electron application is done by electron-builder using settings in defined in package.json under build section. Application source code is being compiled to ./builds/production/ directory, and packaged versions for different platforms go to ./packages directory.

bozon package [mac|windows|linux]

License

MIT © Alex Chaplinsky

bozon's People

Contributors

alchaplinsky avatar lichtjaeger avatar genu avatar mrlannigan avatar mtrnord avatar biremi avatar chbachman avatar

Watchers

淡淡忧愁 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.