CoastWise is a full workflow for constructing storm scenarios, generating rainfall (design storms from NOAA Atlas 14) and tide inputs (real-time data or synthetic if real-time is unavailable), running the EPA's Stormwater Management Model (SWMM) simulations, visualizing baseline conditions for subcatchment runoff, and exploring green infrastructure placement and amounts across a 155-acre watershed.
The Streamlit app is the central user interface for CoastWise. It integrates rainfall/tide generation, land-use–based LID planning, SWMM model execution, flooding extraction, and interactive map/chart visualization.
Users can configure storm and tide conditions, including:
- Units: U.S. Customary or SI
- Storm Duration: 2–12 hours
- Return Period: NOAA Atlas 14 rainfall values
- Tide Input Source:
- Real-time tide data (via Greenstream)
- Synthetic moon-phase–based tide ranges (fallback if real-time is unavailable)
- Rainfall-Tide Alignment:
- Align rainfall peak with high tide, or
- Align rainfall peak with low tide
The app automatically:
- Builds rainfall, tide, and LID usage time-series blocks
- Creates per-scenario SWMM INP files
- Executes simulations via pyswmm
- Extracts from the SWMM report:
- Node Flooding Summary
- Subcatchment Runoff Totals
Five spatial layouts are run under the same budget:
- Baseline (no LIDs)
- All subcatchments
- Upstream areas
- Downstream areas
- High-runoff areas
Each layout is modeled with the original stormwater pipe network and an upsized pipe network with increased pipe diameters, producing:
10 total SWMM scenarios
CoastWise generates summary charts showing:
- Total Costs
- Rain Garden & Rain Barrel Counts
- Total Storage Volumes
For each of the 10 runs, the SWMM model produces a total flood volume (cubic feet or cubic meters).
CoastWise extracts this directly from the Node Flooding Summary within the .rpt file.
The app then displays a ranked bar chart so users can quickly see:
- Which scenario performs best at reducing flooding
- Which LID layout produces the largest flood-reduction benefit
This tool allows users to compare any two scenarios visually, node by node.
For each node, CoastWise loads:
- Its location (from
Nodes.shp) - Flooding depth for Scenario A
- Flooding depth for Scenario B
Nodes are displayed as circles with:
- Red: Scenario A is worse (deeper flooding)
- Blue: Scenario B is worse
- Gray: No meaningful change
Circle size indicates the magnitude of the flooding difference.
This allows users to clearly see:
- Where LIDs reduce flooding
- Which areas see improvements or regressions based on LID placement
- Download Docker for Desktop - Docker Desktop
- Go to GitHub link download zip file by clicking the green Code button - at the top
- Unzip that file
- Open Docker
- Open Terminal in Docker (bottom right of page)
- Type cd "C:\Users\YOUR_NAME\Downloads\coastwise-main\coastwise-main\streamlit-config" and press enter or wherever you stored that unzipped file in the folder where you see a Docker file
- Then type "docker compose up" and press enter
- It takes a couple minutes to get everything up and running. It will tell you when it is done.
- Then you can open a local browser: http://localhost:8501
- Create an account – this data is not used for anything – it can even be a "fake email" with PW 1234: just remember your login for the login portion.