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.
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.
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
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
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
npm run dist
will create electron installers for your operating system
Installer will be created in an ./output/neb-tool/
directory
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.
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.
Contributors to this software include: Jordan Perr-Sauer and Mark Root.
Released under software record NREL/SWR-24-08.