How islam-dj/nour-osemosys-studio-standard works
Nour OSeMOSYS Studio is a local application for building, checking, solving and analysing OSeMOSYS/CLEWs energy models. The main workflow runs from model editing and validation through solver runs to results and uncertainty analysis; cases and MUIO provide persistence and exchange. The server exposes the browser interface and routes API requests to backend services. Frontend feature modules are identified from the tree and README capabilities, but their internal calls were not sampled, so those links are omitted.
Main entry points: main.js Studio UI · web.py HTTP API · solvers.py Solver Service · muio.py MUIO Exchange
Components 23
Modeling
- Energy Diagram
web/js/diagram.js - Model Editing
web/js/entities.js - Model Setup
web/js/setup.js - Model Checks
web/js/checks.js
Run and Results
- Solver Service
server/solvers.py - Solve Engine
engine/solve_check.py - Solver Adapters
engine/highs_run.py - Results Viewer
web/js/results.js - Ask Results
web/js/ask.js - Derived Results
engine/derived.py
Uncertainty Analysis
- Monte Carlo UI
web/js/montecarlo.js - Monte Carlo Service
server/montecarlo.py - Monte Carlo Engine
engine/mc.py - Robust Decisions UI
web/js/rdm.js - RDM Service
server/rdm.py - RDM Engine
engine/rdm.py
Cases and Exchange
- Case Management
server/cases.py - MUIO Exchange
server/muio.py - MUIO Bridge
engine/muio_bridge.py
Local Application
- Studio UI
web/js/main.js - HTTP API
server/web.py - Local Server
server/app.py
Other components
- Modeler
Connections 24
- Modeler → Studio UI: uses
- Studio UI → Energy Diagram: opens
- Studio UI → Model Editing: edits
- Studio UI → Model Setup: configures
- Studio UI → Model Checks: checks
- Studio UI → HTTP API: requests
- Local Server → HTTP API: serves
server/app.py - HTTP API → Solver Service: routes to
server/web.py - HTTP API → Case Management: routes to
server/web.py - HTTP API → Monte Carlo Service: routes to
server/web.py - HTTP API → RDM Service: routes to
server/web.py - HTTP API → MUIO Exchange: routes to
server/web.py - Solver Service → Solve Engine: runs
server/solvers.py - Solve Engine → Solver Adapters: invokes
- Solver Service → Derived Results: computes
engine/derived.py - Studio UI → Results Viewer: views
- Studio UI → Ask Results: asks about
- Studio UI → Monte Carlo UI: configures
- Monte Carlo Service → Monte Carlo Engine: runs
server/montecarlo.py - Studio UI → Robust Decisions UI: configures
- RDM Service → RDM Engine: runs
server/rdm.py - MUIO Exchange → MUIO Bridge: delegates to
server/muio.py - Studio UI → Case Management: manages cases
- Studio UI → MUIO Exchange: imports and exports