EMPACT is an open-source implementation of the IP2M METRR Environmental and Maturity evaluation model, developed under sponsorship by the Department of Energy's Office of Project Management in collaboration with the Earned Value community. This project aims to provide a robust tool for assessing and controlling project management maturity and environmental factors. This project is based on the groundbreaking DOE-funded IP2M METRR research by Arizona State University, but is not affiliated or sponsored by ASU and is not based on ASU's proprietary IP2M METRR software.
- Web-based and installable offline desktop applications from a single codebase (no Docker needed for local install)
- Comprehensive Environment and Maturity Assessments based on the IP2M METRR Model
- Multiple assessments in a collection, allowing for assessment of different groups at a single site
- Multi-dimensional data analysis to generate IP2M METRR model results broken down by groups, or rolled up by organization and over time
- AI-powered summarization and natural language analysis to gather insights from written survey results, across data dimensions
- Mobile support for assessment users, allowing completion of surveys on mobile or tablet devices
- Flexible Single Sign On with support for organizational Identity Providers via OIDC or local account management
For detailed information on installation, usage, and contribution, please refer to our Wiki. (Note: The Wiki may require updates following the recent monorepo refactor described below).
This project uses Yarn Workspaces to manage the monorepo structure, containing the following main packages:
web: The Next.js frontend application.src-tauri: The Tauri desktop application wrapper.
Installation:
- Ensure you have Node.js and Yarn installed.
- Clone the repository.
- Run the following command from the project root directory to install all dependencies for all workspaces:
yarn install
Common Commands:
All commands should be run from the project root directory.
- Run the web development server:
(This runs
yarn dev-web
yarn workspace empact_web dev) - Build the web application:
(This runs
yarn build-web
yarn workspace empact_web build) - Run the Tauri app in development mode: (Uses the web dev server)
(This runs
yarn dev-app
yarn workspace src-tauri tauri dev) - Build the Tauri application: (Currently deferred)
yarn build-app
- Run commands within a specific workspace:
Use the
yarn workspace <workspace_name> <command>syntax. For example, to lint the web workspace (assuming alintscript exists inweb/package.json):yarn workspace empact_web lint
EMPACT is currently beginning active development, and is not yet in a usable state. For the latest updates and roadmap, visit our Project Status page.
We welcome contributions from the earned value community and beyond. Please see our Contributing Guidelines for more information on how to get involved.
This project is licensed under the Creative Commons Attribution 4.0 International License. For full license details, see the LICENSE file.
Please note that while the software is open-source, the EMPACT name and logo are trademarked. For details on usage, refer to our Trademark Policy.
This project is sponsored by the US Department of Energy's Office of Project Management. While based on research funded by the DOE, EMPACT is developed independently from ASU's proprietary IP2M METRR tool.
For more information about the project's background and affiliations, please visit our About page.
For a detailed overview of EMPACT's system architecture, including how we've designed the application to work both as a web service and a desktop application, please see our System Architecture page.
If you encounter any issues or have questions, please check our FAQ or start a discussion. If you'd like to report a problem or issue with the software, please open an issue.

