JUSTIFI is a tool that is a member of Oak Ridge National Laboratory's Industrial Resources suite of applications. The application was developed in collaboration with the National Laboratory of the Rockies (NLR, formerly known as NREL) around the study of Non-Energy Benefits (NEBs). JUSTIFI allows users to identify the Key Performance Metrics (KPM) for a manufacturing facility and quantify the impacts of NEBs from implementation of energy efficiency opportunities.
JUSTIFI, like it's sibling applications MEASUR and VERIFI, is developed as a web application but is also packaged and distributed as an installable desktop application.
The latest web version of the application can be found at https://justifi.ornl.gov
Installable versions of the application can be found under the releases section of this repository.
Alternatively, downloads and additional information about ORNL's suite of tools can be found at ORNL's Industrial Resources site.
Track our progress and planned work on the JUSTIFI GitHub Project Board.
NLR led the research effort around the study and quantification of NEBs. For more information visit the Non-energy Benefits Knowledge Library.
This project is built with the Angular framework (TypeScript) and uses Electron for cross-platform desktop builds.
Thinking of contributing? Please review our Contributing Guidelines first!
- Node.js: See
package.jsonfor the supported version. Download from nodejs.org. - Angular CLI: Project generated with Angular CLI v16.2.8 (regularly updated).
- Install dependencies:
npm install
- Install Angular CLI (for tests):
npm install -g @angular/cli
- Or install locally:
npm install @angular/cliand run withnpm run-script ng
- Or install locally:
- Start the web dev server:
npm run start
- Visit http://localhost:4200/ (auto-reloads on changes)
- Prefer web development unless adding Electron-specific features.
- For live Electron builds:
npm run build-watch
- In a second terminal, start Electron:
npm run electron
- Kill and restart Electron after changes.
- Build artifacts:
/distdirectory - Electron build:
npm run build
- Production web build:
npm run build-prod
- Production Electron build:
npm run build-prod-electron
- Create Electron installers:
npm run dist
- Installers are output to
./output/
-
To run unit tests (requires Chrome):
ng test # or npm run test
-
For headless testing (no browser UI):
ng test --browsers=ChromeHeadless # or npm run test-ci
-
See Karma Config for browser targeting.
This project is licensed under the MIT License. See LICENSE for details.