Swmmtoolbox
Command line script and Python package to read time-series from the Storm Water Management Model (SWMM) binary output.
Install / Use
/learn @timcera/SwmmtoolboxREADME
.. image:: https://github.com/timcera/swmmtoolbox/actions/workflows/pypi-package.yml/badge.svg :alt: Tests :target: https://github.com/timcera/swmmtoolbox/actions/workflows/pypi-package.yml :height: 20
.. image:: https://img.shields.io/coveralls/github/timcera/swmmtoolbox :alt: Test Coverage :target: https://coveralls.io/r/timcera/swmmtoolbox?branch=master :height: 20
.. image:: https://img.shields.io/pypi/v/swmmtoolbox.svg :alt: Latest release :target: https://pypi.python.org/pypi/swmmtoolbox/ :height: 20
.. image:: https://img.shields.io/pypi/l/swmmtoolbox.svg :alt: BSD-3 clause license :target: https://pypi.python.org/pypi/swmmtoolbox/ :height: 20
.. image:: https://img.shields.io/pypi/pyversions/swmmtoolbox :alt: PyPI - Python Version :target: https://pypi.org/project/swmmtoolbox/ :height: 20
swmmtoolbox - Overview
The swmmtoolbox is a Python script to read the Storm Water Management Model (SWMM) version 5 binary output files.
Requirements
Python - of course, version 3.7+.
Installation
The swmmtoolbox is available via pip or conda.
pip
.. code-block:: bash
pip install swmmtoolbox
conda
.. code-block:: bash
conda install -c conda-forge swmmtoolbox
Usage
Command Line
Just run 'swmmtoolbox --help' to get a list of subcommands and options::
usage: swmmtoolbox [-h]
{about,catalog,extract,listdetail,listvariables,stdtoswmm5}
...
positional arguments:
{about,catalog,extract,listdetail,listvariables,stdtoswmm5}
about Display version number and system information.
catalog List the catalog of objects in output file.
extract Get the time series data for a particular object and
variable.
listdetail List nodes and metadata in output file.
listvariables List variables available for each type.
stdtoswmm5 Take the toolbox standard format and return SWMM5
format.
options:
-h, --help show this help message and exit
Python API
Simply import swmmtoolbox::
import swmmtoolbox
ntsd = swmmtoolbox.extract("tests/frutal.out", "node,45,Hydraulic_head")
Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
claude-opus-4-5-migration
85.3kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
model-usage
342.5kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
