Pywr editor is a user-friendly, free and open‑source graphical user interface (UI) to build and customise pywr models written in JSON-based document format.
Pywr editor provides the following features:
- Full and easy customisation of model parameters, nodes, recorders, metadata, tables, imports and slots directly from the UI
- Dynamic validation of model configuration
- Easily run and debug your model using the toolbar actions
- Support of custom model components
- Interactive model schematic
- pan, zoom, resize, screenshotting
- drag, drop or delete multiple nodes at the same time
- connect or disconnect nodes
- change colour and shape of nodes
- External data support
- Automatic parsing of external files to offer suggestions of DataFrame index and column names, and values (from CSV, Excel or HDF files)
- Data visualisation with charts
- Import/export value to Excel (Windows only)
- Windows integration
- Open JSON files directly in the editor
- Browse recent files
- Pin most used models in the taskbar
Note: although the software can run on any system that can run Python, the editor is currently designed to work on Windows only. Upon request the UI can be optimised to work on Linux and Mac platforms.
- Main window
- Schematic nodes
- Parameter dialog
- Scenarios
- Model metadata
- Pandas parsing options with external data
- Available parameters
- Custom component import
- Model run
You can get started with Pywr editor by installing the Windows binary or running the repository source code.
The Windows executable already bundles Python and all the necessary dependencies. You can either install the editor by downloading the Pywr_editor_installer.exe file in the Release page of this project or by downloading and unpacking the Pywr_editor.zip file with the Pywr editor.exe file.
You can run Pywr editor using the Python virtual environment on your machine. From your command line:
# clone the repository first
git clone https://github.com/pywr-editor/editor.git
# create a new Python virtual environment
python -m venv venv
venv\Scripts\activate
# install the necessary dependency first:
pip install -r requirements.txt
# run the editor using
python main.py
this requires Python >= 3.10
This software is licensed under the GNU General Public License, version 3.0+. See the LICENSE file