Installation Guide#
Getting started#
HydroMT-Wflow is a model plugin for HydroMT, extending its core functionalities with Wflow-specific components and workflows. It can be installed as a standalone package or alongside other HydroMT model plugins (e.g. HydroMT-SFINCS, HydroMT-Fiat). We recommend installing HydroMT-Wflow in a dedicated Python environment to ensure dependency consistency.
Prerequisite: Python installation#
You will need Python 3.11 or newer and a package/environment manager such as pip, conda, mamba or uv. These tools simplify installing packages and managing isolated environments.
If you do not yet have one installed, we recommend either:
Both conda variants come preconfigured with the conda-forge channel, which provides free and open packages used by HydroMT.
Installing HydroMT-Wflow#
HydroMT-Wflow is available from both PyPI and conda-forge. The simplest and most flexible approach is to install it using pip inside a new environment.
Installation in a conda environment using uv / pip#
We recommend creating a clean environment to avoid dependency conflicts. For example:
$ conda create -n hydromt-wflow uv python=3.13
$ conda activate hydromt-wflow
$ uv pip install hydromt_wflow
This will install HydroMT-Wflow along with HydroMT core and all required dependencies.
To verify the installation, you can list the installed HydroMT plugins:
$(hydromt-wflow) hydromt --plugins
Model plugins:
- model (hydromt 1.3.0)
- wflow_sbm (hydromt_wflow 1.0.0)
- wflow_sediment (hydromt_wflow 1.0.0)
Component plugins:
- ConfigComponent (hydromt 1.3.0)
- DatasetsComponent (hydromt 1.3.0)
- GeomsComponent (hydromt 1.3.0)
- GridComponent (hydromt 1.3.0)
- MeshComponent (hydromt 1.3.0)
- SpatialDatasetsComponent (hydromt 1.3.0)
- TablesComponent (hydromt 1.3.0)
- VectorComponent (hydromt 1.3.0)
Driver plugins:
- dataset_xarray (hydromt 1.3.0)
- geodataframe_table (hydromt 1.3.0)
- geodataset_vector (hydromt 1.3.0)
- geodataset_xarray (hydromt 1.3.0)
- pandas (hydromt 1.3.0)
- pyogrio (hydromt 1.3.0)
- raster_xarray (hydromt 1.3.0)
- rasterio (hydromt 1.3.0)
Catalog plugins:
- deltares_data (hydromt 1.3.0)
- artifact_data (hydromt 1.3.0)
- aws_data (hydromt 1.3.0)
- gcs_cmip6_data (hydromt 1.3.0)
Uri_resolver plugins:
- convention (hydromt 1.3.0)
- raster_tindex (hydromt 1.3.0)
Installing optional dependencies#
HydroMT-Wflow provides several optional dependencies that extend its capabilities, such as additional data sources or hydrological processing functions. You can install these easily using pip’s extras syntax:
$(hydromt-wflow) uv pip install "hydromt_wflow[extra]"
This will install optional packages such as:
gwwapi - provides access to Global Water Watch reservoir datasets.
hydroengine - enables integration with Google Earth Engine.
wradlib - provides radar rainfall processing and interpolation tools.
pyet - adds evapotranspiration computation support.
For a list of all the optional dependency groups and their contents, have a look at the pyproject.toml file. Use hydromt_wflow[full] to install all optional dependencies.
Installing via conda#
HydroMT-Wflow is also available through the conda-forge channel. You can install it directly with:
$ conda create -n hydromt-wflow -c conda-forge hydromt_wflow
$ conda activate hydromt-wflow
Note that some optional dependencies (e.g. gwwapi or hydroengine) are only available through PyPI.
You can install them afterwards with pip inside your conda environment:
$(hydromt-wflow) uv pip install "hydromt_wflow[extra]"
Developer installation#
If you want to contribute to HydroMT-Wflow or modify its source code, see the Developer installation guide.
For development work, you can use either a Conda-based setup or Pixi, which provides a fully reproducible project environment. Pixi should be used only in developer installations — not for general users — since it manages dependencies project-locally and is less suited for managing multiple plugins globally.