Skip to content

App template for a electron app using aurelia framework

Notifications You must be signed in to change notification settings

BoeseB/aurelia_electron

Repository files navigation

aurelia-skeleton-navigation

ZenHub Join the chat at https://gitter.im/aurelia/discuss

This skeleton is part of the Aurelia platform. It sets up a standard navigation-style app using gulp to build your TypeScript code. Karma/Protractor/Jasmine testing is also configured.

To keep up to date on Aurelia, please visit and subscribe to the official blog. If you have questions, we invite you to join us on Gitter. If you would like to have deeper insight into our development process, please install the ZenHub Chrome/Firefox Extension and visit any of our repository's boards. You can get an overview of all Aurelia work by visiting the framework board.

Running The App

To run the app, follow these steps.

  1. Ensure that NodeJS is installed. This provides the platform on which the build tooling runs.
  2. From the project folder, execute the following command:
npm install
  1. Ensure that Gulp is installed globally. If you need to install it, use the following command:
npm install -g gulp

Note: Gulp must be installed globally, but a local version will also be installed to ensure a compatible version is used for the project.

  1. Ensure that jspm is installed globally. If you need to install it, use the following command:
npm install -g jspm

Note: jspm must be installed globally, but a local version will also be installed to ensure a compatible version is used for the project.

Note: Sometimes jspm queries GitHub to install packages, but GitHub has a rate limit on anonymous API requests. If you receive a rate limit error, you need to configure jspm with your GitHub credentials. You can do this by executing jspm registry config github and following the prompts. If you choose to authorize jspm by an access token instead of giving your password (see GitHub Settings > Personal Access Tokens), public_repo access for the token is required.

  1. Install the client-side dependencies with jspm:
jspm install -y

Note: Windows users, if you experience an error of "unknown command unzip" you can solve this problem by doing npm install -g unzip and then re-running jspm install.

  1. Build the project:
gulp build
  1. To run the app, execute the following command:
gulp watch
  1. Browse to http://localhost:9000 to see the app. You can make changes in the code found under src and the browser should auto-refresh itself as you save files.

The Skeleton App uses BrowserSync for automated page refreshes on code/markup changes concurrently accross multiple browsers. If you prefer to disable the mirroring feature set the ghostMode option to false.

Running The App under Electron

To run the app under Electron, follow these steps.

  1. Install Electron
npm install electron-prebuilt -g
  1. To start the app, execute the following command:
electron index.js

Note: If you use electron every time or are packaging and so-forth, Then change this line in package.json from "main": "dist/main.js", to "main": "index.js", Build the app (this will give you a dist directory)

gulp build

To start the app, execute the following command:

   electron .

Bundling

Bundling is performed by Aurelia Bundler. A gulp task is already configured for that. Use the following command to bundle the app:

  gulp bundle

You can also unbundle using the command bellow:

gulp unbundle

Configuration

The configuration is done by bundles.json file.

Optional

Under options of dist/aurelia add rev: true to add bundle file revision/version.

Running The Unit Tests

To run the unit tests, first ensure that you have followed the steps above in order to install all dependencies and successfully build the library. Once you have done that, proceed with these additional steps:

  1. Ensure that the Karma CLI is installed. If you need to install it, use the following command:
npm install -g karma-cli
  1. Install Aurelia libs for test visibility:
jspm install aurelia-framework
jspm install aurelia-http-client
jspm install aurelia-router
  1. You can now run the tests with this command:
karma start

Running The E2E Tests

Integration tests are performed with Protractor.

  1. Place your E2E-Tests into the folder test/e2e/src
  2. Install the necessary webdriver
gulp webdriver-update
  1. Configure the path to the webdriver by opening the file protractor.conf.js and adjusting the seleniumServerJar property. Typically its only needed to adjust the version number.

  2. Make sure your app runs and is accessible

gulp watch
  1. In another console run the E2E-Tests
gulp e2e

Exporting bundled production version

A gulp task is already configured for that. Use the following command to export the app:

  gulp export

The app will be exported into export directory preserving the directory structure.

Configuration

The configuration is done by bundles.json file. In addition, export.json file is available for including individual files.

About

App template for a electron app using aurelia framework

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published