Skip to content

Latest commit

 

History

History
67 lines (34 loc) · 2.67 KB

README.md

File metadata and controls

67 lines (34 loc) · 2.67 KB

NEB Tool

A user friendly, graphical, open-source application (Web/Mac/Windows) of the multiple benefits framework for non-energy benefits, incorporating additional aspects to make the tool effective for use in the United States.

For Developers

This tool is written in the Angular javascript framework and uses Electron for platform-specific builds.

If you plan to contribute your code changes to this repository, please review the contributing guidelines first.

Getting Started

  • We are using NodeJS v 20.9 LTS nodejs.org

  • To install all required packages: npm install

  • To install the Angular CLI which is required for tests, npm install -g @angular/cli

    • Note: If you don't want to install angular cli globally, you can install it locally using npm install @angular/cli and then run it using npm run-script ng
  • When developing for web run npm run start for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

  • When developing in electron window use npm run build-watch and a re-build will trigger on save of changes

  • To start the electron app (kill and restart app after rebuild on save): npm run electron

Build

  • Built artifacts will be stored in the /dist directory.

  • General build for electron npm run build

  • Production Web Build npm run build-prod

  • Production Electron Build npm run build-prod-electron

Native Installers

  • npm run dist will create electron installers for your operating system

  • Installer will be created in an ./output/neb-tool/ directory

Running unit tests

  • Run ng test to execute the unit tests via Karma.

Karma unit tests use Google Chrome as a default browser. This will need to be installed on your machine for the tests to run using ng test or npm run test.

Otherwise, you can run the tests with a headless version of chrome using ng test --browsers=ChromeHeadless or npm run test-ci.

Check the Karma Config documentation on how to target other browsers using a config file.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI Overview and Command Reference page.

This project was generated with Angular CLI version 16.2.8.

Acknowledgements

Contributors to this software include: Jordan Perr-Sauer and Mark Root.

Released under software record NREL/SWR-24-08.