# mgomezr1/pronoia-promethee architecture

> Architecture diagram of the GitHub repository mgomezr1/pronoia-promethee, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-09). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/mgomezr1/pronoia-promethee
- Repository: https://github.com/mgomezr1/pronoia-promethee

## Overview

Prónoia PROMETHEE is a browser-based academic decision-support application for PROMETHEE I and II. Its documented workflow takes users from decision setup through criteria, preference functions, and a performance matrix to rankings and weight-stability analysis, with Excel and PDF exports. The README also describes a learning section and sample scenarios. The tree exposes only index.html as application source; relationships below follow the README’s documented workflow, not inspected implementation. All application nodes therefore point to that file.

Main entry points: [`index.html`](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html) (Results view)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_inputs["Decision inputs"]
  node_learning["Method guide<br/>[index.html]"]
  node_explorer["Preference explorer<br/>[index.html]"]
  node_setup["Decision setup<br/>[index.html]"]
  node_criteria["Criteria and weights<br/>[index.html]"]
  node_preferences["Preference functions<br/>[index.html]"]
  node_performance["Performance matrix<br/>[index.html]"]
  node_scenarios["Practice scenarios<br/>[index.html]"]
end

subgraph group_analysis["PROMETHEE analysis"]
  node_calculation["PROMETHEE calculation<br/>[index.html]"]
  node_flows["Positive, negative, net flows<br/>[index.html]"]
  node_ranking["PROMETHEE II ranking<br/>[index.html]"]
  node_incomparability["PROMETHEE I incomparabilities<br/>[index.html]"]
  node_stability["Weight stability intervals<br/>[index.html]"]
end

subgraph group_outputs["Results and exports"]
  node_results["Results view<br/>[index.html]"]
  node_excel["Excel export<br/>[index.html]"]
  node_pdf["Executive PDF<br/>[index.html]"]
end

node_user(("Decision maker"))
node_sheetjs["SheetJS CDN"]

node_user -->|"reads"| node_learning
node_user -->|"tries"| node_explorer
node_user -->|"configures"| node_setup
node_user -->|"practices with"| node_scenarios
node_setup -->|"defines"| node_criteria
node_criteria -->|"confirms"| node_preferences
node_preferences -->|"sets thresholds before"| node_performance
node_performance -->|"submits for"| node_calculation
node_calculation -->|"calculates"| node_flows
node_calculation -->|"calculates"| node_ranking
node_calculation -->|"identifies"| node_incomparability
node_calculation -->|"analyzes weights"| node_stability
node_ranking -->|"appears in"| node_results
node_flows -->|"appears in"| node_results
node_incomparability -->|"appears in"| node_results
node_stability -->|"appears in"| node_results
node_results -->|"exports to"| node_excel
node_results -->|"exports to"| node_pdf
node_excel -->|"loads library from"| node_sheetjs

click node_learning "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_explorer "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_setup "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_criteria "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_preferences "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_performance "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_scenarios "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_calculation "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_flows "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_ranking "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_incomparability "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_stability "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_results "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_excel "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"
click node_pdf "https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_learning,node_explorer,node_setup,node_criteria,node_preferences,node_performance,node_scenarios toneBlue
class node_calculation,node_flows,node_ranking,node_incomparability,node_stability toneAmber
class node_results,node_excel,node_pdf toneMint
class node_user,node_sheetjs toneIndigo
```

## Components

### Decision inputs

- [Method guide](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Preference explorer](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Decision setup](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Criteria and weights](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Preference functions](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Performance matrix](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Practice scenarios](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`

### PROMETHEE analysis

- [PROMETHEE calculation](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Positive, negative, net flows](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [PROMETHEE II ranking](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [PROMETHEE I incomparabilities](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Weight stability intervals](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`

### Results and exports

- [Results view](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Excel export](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`
- [Executive PDF](https://github.com/mgomezr1/pronoia-promethee/blob/main/index.html): `index.html`

### Other components

- **Decision maker**
- **SheetJS CDN**

## Connections

- Decision maker → Method guide: reads (evidence: `README.md`)
- Decision maker → Preference explorer: tries (evidence: `README.md`)
- Decision maker → Decision setup: configures (evidence: `README.md`)
- Decision maker → Practice scenarios: practices with (evidence: `README.md`)
- Decision setup → Criteria and weights: defines (evidence: `README.md`)
- Criteria and weights → Preference functions: confirms (evidence: `README.md`)
- Preference functions → Performance matrix: sets thresholds before (evidence: `README.md`)
- Performance matrix → PROMETHEE calculation: submits for (evidence: `README.md`)
- PROMETHEE calculation → Positive, negative, net flows: calculates (evidence: `README.md`)
- PROMETHEE calculation → PROMETHEE II ranking: calculates (evidence: `README.md`)
- PROMETHEE calculation → PROMETHEE I incomparabilities: identifies (evidence: `README.md`)
- PROMETHEE calculation → Weight stability intervals: analyzes weights (evidence: `README.md`)
- PROMETHEE II ranking → Results view: appears in (evidence: `README.md`)
- Positive, negative, net flows → Results view: appears in (evidence: `README.md`)
- PROMETHEE I incomparabilities → Results view: appears in (evidence: `README.md`)
- Weight stability intervals → Results view: appears in (evidence: `README.md`)
- Results view → Excel export: exports to (evidence: `README.md`)
- Results view → Executive PDF: exports to (evidence: `README.md`)
- Excel export → SheetJS CDN: loads library from (evidence: `README.md`)
