River Architect

the next generation river design

River Architect

River Architect is a peer-reviewed (open access at SoftwareX), Python3-based GUI toolkit for sustainable river design, ecohydraulic calculations and fish stranding risk assessments. Check it out:

Installation guide | Documentation (Wiki) | Sample Data


River Architect is written in Python3 as an open-source code to support river designers with a set of GUI modules.


Sample data can be downloaded here. The core functionalities are:


Do not hesitate to contact river.architect.program [at] gmail.com for reporting bugs, suggestions, or any feedback.

Bug reports, feature requests and pull requests are welcome (submit here).


The code was developed based on data from California’s Yuba River and example results can be downloaded.

Read the Get Started Wiki to learn about the terminology used in River Architect and create river Conditions.

River Architect comes with the following modules:

An earlier Python2-version of River Architect can be downloaded here(usage deprecated).

Future developments will focus on improving the GUIs, developing active terraforming modules and re-writing geospatial analyses with the gdal package to resolve license issues with arcpy.


An overview presentation can be downloaded here. The usage of River Architect is described in the River Architect’s Wiki. River Architect’s’ Wiki also provides detailed solutions for Troubleshooting.


  • Digital terrain elevation models (DEMs).
  • 2D hydrodynamic modeling of multiple steady flow scenarios.
  • Esri’s ArcGIS Pro Python environment with SpatialAnalyst license (Windows only).


The quick version: Download River Architect, unzip the downloaded files, and double-click on Start_River_Architect.bat. Modifications of the batchfile might be required, for example, to fit the conda environment. The standard environment is "%PROGRAMFILES%\ArcGIS\Pro\bin\Python\Scripts\propy", which typically refers to "C:\Program Files\ArcGIS\Pro\bin\Python\scripts\propy.bat". ArcGIS provides more information on running stand-alone Python scripts on their website.

The robust version: Follow the Wiki’s detailed instructions for installing, updating, and launching River Architect.


No warranty is expressed or implied regarding the usefulness or completeness of the information provided by River Architect and its documentation (wiki). References to commercial products do not imply endorsement by the Authors of River Architect. The concepts, materials, and methods used in the algorithms and described in the wiki are for informational purposes only. The Authors have made substantial effort to ensure the accuracy of the algorithms and the wiki, but science of prediction is uncertain and the Authors shall not be held liable, nor their employers or funding sponsors, for calculations and/or decisions made on the basis of application of River Architect. The information is provided “as is” and anyone who chooses to use the information is responsible for her or his own choices as to what to do with the data and the individual is responsible for the results the follow from their decisions.


River Architect was developed in the Pasternack Lab for Watershed Hydrology, Geomorphology, and Ecohydraulics at University of California at Davis, Department of Land, Air, and Water Resources.

River Architect is the result of research projects funded by

The scientific procedures integrated into River Architect are the result of a dedicated development team and many researchers who contributed useful hints. Therefore, special thanks goes to Lukas Schmocker, Isabella Schalko, Virginia Ruiz-Villanueva, Carmelo Juez, Fabian Friedl and John Stella for their inputs regarding wood introduction, side cavity dynamics, sediment replenishment and riparian vegetation plantings in riverine environments.