The original concept was in excel and VBA.
I ended up pulling out the engine as a separate open source library which I've used on a few other projects.
https://github.com/modelcreate/epanet-js#model-calibrate