Alongside consulting practice, I build and contribute to open-source tools for the Australian hydrology and hydraulic modelling community. Below are my active public repositories and selected technical contributions.
Open Source Repositories
pyextremes — ARR2019_Book3 Python Active Fork
Fork of Georgy Bocharnikov's pyextremes — extended for ARR 2019 Book 3 and USGS Bulletin 17C at-site flood frequency analysis.
Adds native Log-Pearson Type III (LP3) distribution fitting, the Multiple Grubbs-Beck Test for Potentially Influential Low Flood (PILF) identification, Two-Component Extreme Value (TCEV) distribution support, and LH-moments (h=1,2,3) for robust parameter estimation in Australian catchments where the "separation effect" affects standard L-moment fits.
The branch is functional and testable. I'm actively developing it and welcome user feedback and bug reports via GitHub Issues — this is genuinely useful for Australian practitioners who need a pure-Python ARR 2019–compliant FFA workflow.
tuflow-vscode TypeScript
VS Code extension for TUFLOW hydraulic model files.
Syntax highlighting, keyword IntelliSense, and file navigation for TUFLOW control files (.tcf, .tbc, .tgc, .tef). Reduces friction in the model development workflow — particularly useful when managing large, multi-file TUFLOW configurations. Available on the VS Code Marketplace.
Billabong QGIS Plugin Python
Python plugin for QGIS — hydrological data processing and analysis tools.
A QGIS plugin providing hydrological analysis tools within the QGIS environment. Published to the QGIS Plugin Repository.
PyRomb — URBS Model Builder Python PR merged upstream
URBS runoff model builder for QGIS — contribution merged into Tom Norman's PyRomb main repository.
I wrote the URBS model builder component of PyRomb, submitted as a pull request to Tom Norman's main repository. The contribution was accepted upstream — URBS and RORB runoff models can now both be built directly within QGIS via the PyRomb plugin, removing the need to configure model files manually outside the GIS environment.
Interactive Tools
Peak–Area Relationship Explorer
Web app · Australian flood peak/catchment-area analysis
An interactive tool for exploring peak flow vs. catchment area relationships across modelled Australian flood studies — geospatial mapping and statistical comparison of flood characteristics by region.
Technical Projects
Delft-FEWS / GoldSim Model Adapter
Python · Seqwater / WRM Water & Environment · 2019
A Python pre/post-adapter enabling GoldSim reservoir routing models to run natively within a Delft-FEWS real-time forecasting system. The adapter translates FEWS PI-XML time series to GoldSim spreadsheet inputs (pre-adapter) and converts GoldSim output back to PI-XML for FEWS import (post-adapter), triggered by a batch controller. Presented at the 2019 TUFLOW User Conference.
Continuous Simulation for Long-Duration Flood Estimation
Python · URBS · Internal R&D
Adapted the pyraingen stochastic rainfall generation framework (Dykman & Brady) for long-term URBS continuous simulation — generating synthetic rainfall sequences constrained to IFD design values for use in continuous simulation flood frequency analysis. Part of ongoing R&D into moving from design storm–based to continuous simulation–based design flood estimation.
View all repositories on GitHub → | Questions or collaboration on any of the above: get in touch.