The Watt's Right Unified Dashboard is a standalone desktop application that brings together two complementary dashboards — Fairness and Sustainability — into one cohesive interface.
It allows educators, students, researchers, and practitioners to analyze, visualize, and reflect on AI systems from ethical, fairness, and sustainability perspectives.
This unified dashboard is designed to run anywhere without installation requirements — users simply double-click the generated executable (.exe on Windows, .app on macOS) to launch the app, which automatically spins up local Flask servers and opens the dashboard in the browser.
The dashboard runs on Windows and macOS systems.
The Fairness dashboard takes any dataset in .csv format.
For the Sustainability dashboard:
- A huggingface model link should refer to a Large Language Model meant for a classification task, for example: sureshs/distilbert-large-sms-spam (used in demo's of this dashboard)
- The dataset should be a text dataset with one column containing (one-hot encoded) classes. This repo contains an example dataset called sustainability_demo_dataset.csv
- Be sure to enter the name of the column in the data that contains the target feature. With the example dataset, this is 'label'
Watt's Right aims to help AI practitioners explore responsible AI concepts through interactive analytics and visualizations.
The unified dashboard consists of:
-
Fairness Dashboard — A Flask-based web app for exploring fairness metrics, user distributions, and comparative visualizations. It allows a developer to upload their model and data in order to visualize the impact of three main fairness metrics on the model's performance ability on groups in the data. In this process, it bridges the gap between the concepts of group and individual fairness, enabling the developer to see direct impact of their decisions on individuals in the data.
-
Sustainability Dashboard — A Flask + Angular dashboard for measuring and visualizing the relationship between model performance and energy efficiency. It allows the practitioner to controllably prune a Large Language Model (LLM) meant for text-classification, facilitating the development of greener LLM solutions. In the final steps, the dashboard utilizes the system's own hardware (GPU if available, otherwise CPU) to show the effect of pruning on the model's performance on classes in the uploaded data. Finally, the pruned model can be exported as a HuggingFace model, allowing the practitioner to directly use their newly pruned model in other solutions.
The dashboards run locally and communicate through Python servers that handle user data, model metrics, and visualization endpoints.
If you're running this from source (instead of the .exe):
- Python 3.10+ with pip
- Node.js 18+ with npm (required for building the Sustainability dashboard frontend)
Windows:
git clone https://github.com/responsibleIT/responsible_dashboard.git
cd responsible_dashboard\WattsRight_UnifiedDashboard
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
python main.pymacOS / Linux:
git clone https://github.com/responsibleIT/responsible_dashboard.git
cd responsible_dashboard/WattsRight_UnifiedDashboard
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python main.pymacOS Apple Silicon (M1/M2/M3) Note: If you have an Apple Silicon Mac, you need to install the macOS-specific TensorFlow after the regular requirements:
pip uninstall tensorflow
pip install tensorflow-macos>=2.12.0,<2.16.0When you run main.py for the first time, it will automatically:
- Check if npm is available
- Install Angular dependencies (
npm install) if needed - Build the Sustainability frontend (
npm run build) if needed - Start both dashboard servers
- Open the frontpage in your default browser
python main.py [options]
Options:
--build-only Build frontend assets only, don't start servers
--rebuild Force rebuild of frontend assets even if they exist
--skip-build Skip frontend build check (use existing builds)
--help, -h Show help messageNote: The Fairness dashboard uses static files and requires no build step.
To create a standalone app so anyone can run the dashboard without installing Python or Node.js:
- Complete the development setup above (including running
main.pyat least once to build the Angular frontend) - Ensure PyInstaller is installed:
pip install pyinstaller
Windows:
cd WattsRight_UnifiedDashboard
pyinstaller main.specThis generates dist/WattsRightDashboard.exe.
macOS:
cd WattsRight_UnifiedDashboard
pyinstaller main_macos.specThis generates dist/WattsRightDashboard.app.
You can distribute these files directly to others — they don't need Python, Node.js, or any dependencies installed. When launched, the app will start the servers and open the dashboard in their browser.
Windows:
- Double-click
WattsRightDashboard.exe - Wait for the splash screen (Watt's Right logo) to disappear
- Your browser will open the Front Page
macOS:
- Double-click
WattsRightDashboard.app - If you see a security warning, right-click the app and select "Open", then click "Open" in the dialog
- Your browser will open the Front Page
Both platforms: 4. Choose either: - Fairness Dashboard (localhost:5000) - Sustainability Dashboard (localhost:8000) 5. Use the "Shut Down Application" button on the front page to safely stop background servers
responsible_dashboard/
├── README.md
├── LICENSE.md
├── requirements.txt
└── WattsRight_UnifiedDashboard/
├── main.py # Main entry point
├── main.spec # PyInstaller build configuration
├── requirements.txt # Python dependencies
├── frontpage/ # Landing page HTML/CSS/JS
└── apps/
├── fairness_dashboard/ # Flask app (static frontend)
└── sustainability_dashboard/
├── backend/ # Flask + SocketIO backend
└── frontend_v2/ # Angular frontend (requires build)
Developed in collaboration between University of Applied Sciences Amsterdam, KPN, Blue Field Agency, and BrainCreators as an exploratory KIEM-research project.
- Exe doesn't start: Check for antivirus blocking or permission issues. Try right-clicking and "Run as administrator".
- Splash screen hangs: The app may be loading large dependencies. Wait up to 60 seconds on first launch.
- "App is damaged" or "unidentified developer": Right-click the app, select "Open", then click "Open" in the dialog. Or go to System Preferences > Security & Privacy and click "Open Anyway".
- App won't open: Try running from Terminal:
open /path/to/WattsRightDashboard.app
- Ports 5000 or 8000 in use: Kill those processes first, or check for other Flask/Node apps running.
- Windows Firewall prompt: Allow access when prompted to enable local server communication.
- macOS firewall: Allow incoming connections when prompted.
- npm not found: Install Node.js from https://nodejs.org/ and restart your terminal.
- Angular build fails: Try running
npm installmanually inapps/sustainability_dashboard/frontend_v2/. - Python dependencies missing: Ensure you've activated the virtual environment and run
pip install -r requirements.txt.
- Windows:
%TEMP%/wattsright_logs/ - macOS:
/tmp/wattsright_logs/
Check fairness.log and sustainability.log for detailed error messages.