Skip to content
An example of an Angular CLI app running in NW.js
TypeScript JavaScript HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

NW.js and Angular CLI example

This project was generated with Angular CLI version 8.3.8.

A Screenshot of the default app running on Windows

Running Locally for development

  1. npm install
  2. npm start
  3. Webpack will spin up (takes a moment) then a window will pop up

You can also run this repo in a regular browser with npm run start:web, but will need to add conditionals into your code to skip desktop-specific code (if (window.nw) {}).

Building for distribution

  1. npm run build:clean will delete your ./dist and /dist-ng folders
  2. npm run build:ng will build just your Angular app for distribution (./dist-ng)
  3. npm run build:nw will build just your NW.js app (./dist)
  4. npm run build is your all-in-one command. It will clean out the old dist folders and build your Angular and NW.js app


They take a long time. If you do npm run build expect it to take 10-15 minutes. This can be adjusted by changing the build params in the package.json. The more platforms and build types, the longer it takes. You can also remove the --concurrent from the build:nw script to see a status of what has been completed. This will allow individual pieces to finish faster, but the entire build will take longer.

Automated quality enforcment

  1. Linting: npm run lint - tslint.json
  2. Unit tests: npm test - Karma.
  3. End-to-end: npm run e2e - Accepting PR to fix these tests. - Protractor.

Code scaffolding

ng generate Docs

  1. npm run generate -- component component-name to generate a new component.
  2. npm run generate -- directive directive-name to generate a new directive.
  3. npm run generate -- pipe pipe-name to generate a new pipe.
  4. npm run generate -- service service-name to generate a new service.
  5. npm run generate -- class class-name to generate a new class.
  6. npm run generate -- guard guard-name to generate a new guard.
  7. npm run generate -- interface interface-name to generate a new interface.
  8. npm run generate -- enum enum-name to generate a new enum.
  9. npm run generate -- module module-name to generate a new module.

Further help

To get more help on the Angular CLI use npm run ng -- help or go check out the Angular CLI README.

You can’t perform that action at this time.