Skip to content

cahaseler/EMPACT

Repository files navigation

EMPACT: Environment and Maturity Program Assessment and Control Tool

License: CC BY 4.0 Security Rating Maintainability Rating

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.

Key Features

  • 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

Getting Started

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).

Development Setup (Yarn Workspaces)

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:

  1. Ensure you have Node.js and Yarn installed.
  2. Clone the repository.
  3. 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:
    yarn dev-web
    (This runs yarn workspace empact_web dev)
  • Build the web application:
    yarn build-web
    (This runs yarn workspace empact_web build)
  • Run the Tauri app in development mode: (Uses the web dev server)
    yarn dev-app
    (This runs 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 a lint script exists in web/package.json):
    yarn workspace empact_web lint

Project Status

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.

Contributing

We welcome contributions from the earned value community and beyond. Please see our Contributing Guidelines for more information on how to get involved.

License

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.

Acknowledgments

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.

DOE Office of Project Management Logo

For more information about the project's background and affiliations, please visit our About page.

System Architecture

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.

Support

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.

About

Environmental and Maturity Program Assessment and Control Tool: An Open Source IP2M METRR model implementation

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

Languages