SWMManywhere

SWMManywhere: Synthesise Urban Drainage Network Models Anywhere in the World - Published in JOSS (2025)

https://github.com/imperialcollegelondon/swmmanywhere

Science Score: 95.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org, zenodo.org
  • Committers with academic emails
    5 of 11 committers (45.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

hacktoberfest hydraulic-modelling hydrology-stormwater-analysis python stormwater swmm swmm5 swmmanywhere

Keywords from Contributors

hydrology integrated-modelling pollution wastewater water-quality mesh energy-system exoplanet polygon gravitational-lensing
Last synced: 4 months ago · JSON representation

Repository

SWMManywhere is used to derive and simulate a sewer network anywhere in the world

Basic Info
Statistics
  • Stars: 27
  • Watchers: 3
  • Forks: 4
  • Open Issues: 94
  • Releases: 17
Topics
hacktoberfest hydraulic-modelling hydrology-stormwater-analysis python stormwater swmm swmm5 swmmanywhere
Created almost 2 years ago · Last pushed 4 months ago
Metadata Files
Readme Contributing License Code of conduct Citation

README.md

SWMManywhere: Synthesise Urban Drainage Network Models Anywhere in the World

PyPI version shields.io Test and build DOI codecov status Total Downloads

SWMManywhere is a tool to synthesise urban drainage network models (UDMs) using publicly available data such as street network, DEM, and building footprints, across the globe. It also provides tools for generating SWMM input files and performing simulations for the synthesised UDMs.

Features

  • Automatic data retrieval and preprocessing: all of our data requirements are met with global datasets, so all you need is a bounding box!
  • Customisable network synthesis: change a range of parameters to create different networks, power users can easily extend existing functionality.
  • Streamlined evaluation to compare with real networks: we include a variety of performance metrics and automatic running/comparing if you have your own SWMM model.
  • Command line interface: All of this and more can be accessed by passing a configuration file to a CLI.

Installation

Install SWMManywhere:

bash pip install swmmanywhere

Alternatively, it can be installed using mamba (conda or micromamba):

bash mamba install -c conda-forge swmmanywhere

SWMManywhere dependencies may be viewed in the pyproject.toml.

Documentation and Quickstart

Once installed, you can simply run SWMManywhere from the command line giving a configuration file in YAML format as input. As SWMManywhere can download data automatically from well known sources, this settings file can often be minimal and restricted to indicating the geographical area to be processed:

python -m swmmanywhere --config_path=\path\to\config.yml

The result of the calculation will be a model of the sewage system for that area, like the following, which can then be further processed or analysed with SWMM, for example:

SWMM Model

Follow the Quickstart for a more detailed initial example and ReadTheDocs for full information of SWMManywhere capabilities. <!-- markdown-link-check-enable -->

Use and contributing

This project is licensed under the BSD-3-Clause licence, see LICENSE.

There are many things we would like to do! If you are interested to contribute please see CONTRIBUTING and CODE OF CONDUCT.

Owner

  • Name: Imperial College London
  • Login: ImperialCollegeLondon
  • Kind: organization
  • Email: icgithub-support@imperial.ac.uk
  • Location: Imperial College London

Imperial College main code repository

JOSS Publication

SWMManywhere: Synthesise Urban Drainage Network Models Anywhere in the World
Published
June 03, 2025
Volume 10, Issue 110, Page 7729
Authors
Barnaby Dobson ORCID
Imperial College London, UK
Diego Alonso-Álvarez ORCID
Imperial College London, UK
Taher Chegini ORCID
Purdue University, US
Editor
Mengqi Zhao ORCID
Tags
python stormwater hydrology-stormwater-analysis swmm5 swmm hydraulic-modelling

GitHub Events

Total
  • Create event: 61
  • Release event: 9
  • Issues event: 84
  • Watch event: 22
  • Delete event: 34
  • Member event: 2
  • Issue comment event: 178
  • Push event: 305
  • Pull request event: 128
  • Pull request review comment event: 57
  • Pull request review event: 149
  • Fork event: 2
Last Year
  • Create event: 61
  • Release event: 9
  • Issues event: 84
  • Watch event: 22
  • Delete event: 34
  • Member event: 2
  • Issue comment event: 178
  • Push event: 305
  • Pull request event: 128
  • Pull request review comment event: 57
  • Pull request review event: 149
  • Fork event: 2

Committers

Last synced: 4 months ago

All Time
  • Total Commits: 1,167
  • Total Committers: 11
  • Avg Commits per committer: 106.091
  • Development Distribution Score (DDS): 0.45
Past Year
  • Commits: 394
  • Committers: 9
  • Avg Commits per committer: 43.778
  • Development Distribution Score (DDS): 0.553
Top Committers
Name Email Commits
Dobson b****n@i****k 642
barneydobson b****1@g****m 354
pre-commit-ci[bot] 6****] 61
dependabot[bot] 4****] 48
Diego Alonso Alvarez d****z@i****k 36
Tom Bland t****d@h****k 13
Daniel Cummins d****7@i****k 6
Barnaby Dobson b****n@g****m 3
James Paul Turner j****r@i****k 2
Adrian D'Alessandro a****o@i****k 1
AadiUJ a****b@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 149
  • Total pull requests: 223
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 5 days
  • Total issue authors: 9
  • Total pull request authors: 8
  • Average comments per issue: 1.43
  • Average comments per pull request: 1.28
  • Merged pull requests: 177
  • Bot issues: 0
  • Bot pull requests: 82
Past Year
  • Issues: 63
  • Pull requests: 183
  • Average time to close issues: 27 days
  • Average time to close pull requests: 5 days
  • Issue authors: 9
  • Pull request authors: 8
  • Average comments per issue: 1.11
  • Average comments per pull request: 1.39
  • Merged pull requests: 138
  • Bot issues: 0
  • Bot pull requests: 63
Top Authors
Issue Authors
  • barneydobson (133)
  • cheginit (8)
  • dalonsoa (2)
  • AnuPal1Hydro123 (1)
  • joeshuttleworth (1)
  • meghnathomas (1)
  • AdrianDAlessandro (1)
  • mebauer (1)
  • cbuahin (1)
Pull Request Authors
  • barneydobson (117)
  • pre-commit-ci[bot] (57)
  • dependabot[bot] (25)
  • dalonsoa (11)
  • tsmbland (6)
  • AdrianDAlessandro (3)
  • jamesturner246 (2)
  • dc2917 (2)
Top Labels
Issue Labels
feature (27) enhancements (23) JOSS (14) documentation (14) hacktoberfest (13) sa_paper (13) refactor (12) bug (11) testing (8) performance (4) deprecation (3) infrastructure (3) metric (3) good first issue (3) graphfcn (3) optimisation (2) github_actions (1) python (1) help wanted (1) wontfix (1) workaround (1)
Pull Request Labels
dependencies (25) github_actions (7) hacktoberfest-accepted (5) python (4) sa_paper (2) help wanted (1) bug (1) feature (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 302 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 12
  • Total maintainers: 1
pypi.org: swmmanywhere

SWMManywhere software

  • Versions: 12
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 302 Last month
Rankings
Dependent packages count: 10.3%
Average: 34.1%
Dependent repos count: 57.9%
Maintainers (1)
Last synced: 4 months ago