A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

FloodAdapt

A decision-support tool that seeks to advance and accelerate flooding-related adaptation planning.
https://github.com/Deltares-research/FloodAdapt

Category: Climate Change
Sub Category: Natural Hazard and Storm

Keywords from Contributors

hydrology

Last synced: about 20 hours ago
JSON representation

Repository metadata

README.md

FloodAdapt

FloodAdapt is a decision-support tool that seeks to advance and accelerate flooding-related adaptation planning. It brings rapid, physics-based compound flood and detailed impact modelling into an easy-to-use system, allowing non-expert end-users to evaluate a wide variety of compound events, future conditions, and adaptation options in minutes. FloodAdapt serves as a connector between scientific advances and practitioner needs, improving and increasing the uptake and impact of adaptation research and development.

To make decisions on flood adaptation, communities need to understand how climate and socio-economic changes will affect flood risk and the risk-reduction potential of various adaptation options. This type of information is usually costly to acquire, and models are often too slow and labor-intensive to evaluate all the scenarios required to understand the impacts and effectiveness of potential adaptation decisions. FloodAdapt addresses this by making rapid, physics-based compound flood modeling and detailed impact modeling accessible to non-expert end-users, allowing them to evaluate a wide variety of compound events, future conditions, and adaptation options in minutes.

FloodAdapt was developed as a rapid planning tool with a straightforward graphical user interface for scenario generation, simulation, and visualization of spatial flooding and flooding impacts. Decision-making needs at the community level were central to the design of FloodAdapt. Users can answer planning questions like: “How will potential adaptation options reduce flood impacts?”, “How will those options perform for different types of events, like hurricanes, king tides, or heavy rainfall?”, “Which neighborhoods will benefit most?”, “How will those options hold up in the future?”

Users specify what-if scenarios composed of historic or synthetic weather events, climate or socio-economic future projections, and adaptation measures.
The backend of FloodAdapt leverages the open-source, state-of-the-art process-based compound flood model SFINCS (https://github.com/Deltares/SFINCS) that can accurately predict compound flooding due to surge, rainfall, and river discharge, at a fraction of the computation time typically required by physics-based models. The damage model included in FloodAdapt is the Deltares-developed flood impact assessment tool Delft-FIAT (https://github.com/Deltares/Delft-FIAT). It calculates the flood damages to individual buildings and roads, and – when social vulnerability data is available – aggregates these damages over vulnerability classes.

FloodAdapt can greatly support adaptation planning by allowing users to explore many scenarios. It can be used to evaluate flooding and impacts due to compound weather events, like hurricanes, king tides, and rainfall events. Users can evaluate flooding, impacts, and risk considering user-specified projections of sea level rise, precipitation increase, storm frequency increase, population growth, and economic growth. Users can also test out adaptation options, like sea walls, levees, pumps, home elevations, buyouts and floodproofing.

Recent developments of the decision-support system include (1) simplifying and partially automating the setup of the SFINCS and Delft-FIAT models, (2) improving the user experience, (3) better supporting adaptation planning with improvements like metrics tables, infographics, better visualizations in the user interface, adding in additional adaptation options to evaluate, and calculating benefits of adaptation options, and (4) incorporating social vulnerability and equity into the evaluation of adaptation options to support equitable adaptation planning.

FloodAdapt is currently in an intensive development stage. Independent usage of the repository will be challenging prior to end-of-year 2024. FloodAdapt documentation will be expanded on throughout 2024.

Joining the team

Whenever someone joins the team, a few steps needs to be taken before you can access the full list of repositories that we use. First of all, you need to be part of the Deltares and Deltares-research organisations. This access needs to be granted by one of the enterprise owners. When this access is granted, you can request to join the FloodAdaptAdmins team if you are a part of the core team, the FloodAdaptDevelopers if you'll sporadically be working on Flood Adapt and the FloodAdaptUsers team if you are testing the application.

Contributing

Setting up conda

In order to develop on flood_adapt locally, please follow the following steps:

  • Download and install mambaforge.

  • Initialize conda by running the following in the Miniconda prompt:

conda init
  • Depending on your company settings, you might also have to run the following in a Powershell terminal as administrator:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

Creating (or updating) the environment

  • Create (or update) the environment by executing the following in your terminal:
mamba env create --file=environment.yml --force

Installing FloodAdapt

  • Activate the environment
conda activate flood_adapt

In order to develop on flood_adapt locally, execute the following line inside your virtual environment

pip install -e .

Installing pre-commit (For developers)

Hook scripts are useful for identifying simple issues before submission to code review.
Precommit runs automatically on every commit point out issues in code such as missing semicolons, trailing whitespace, and debug statements. By pointing these issues out before code review, allows a code reviewer to focus on the architecture of a change while not wasting time with trivial style nitpicks. Install the git hook scripts with:

pre-commit install

Running this commands for the first time may take a minute or two, since the hook scripts need to be fetched and installed.
This scripts are cached, and now pre-commit will run automatically on every git commit.

Running the tests

If no already done, activate the environment

conda activate flood_adapt

To run the tests execute:

pytest tests

Setup Visual Studio Code (optional)

  1. Install the Python, ruff and autoDocstring extensions.

  2. Add the following to your .vscode/settings.json file in your workspace

{
    "[python]": {
        "editor.formatOnSave": true,
        "editor.codeActionsOnSave": {
            "source.fixAll": true
        }
    },
    "python.formatting.provider": "black",
    "autoDocstring.docstringFormat": "numpy"
}

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 5 days ago

Total Commits: 351
Total Committers: 13
Avg Commits per committer: 27.0
Development Distribution Score (DDS): 0.667

Commits in past year: 214
Committers in past year: 8
Avg Commits per committer in past year: 26.75
Development Distribution Score (DDS) in past year: 0.5

Name Email Commits
LuukBlom 1****m 117
Panos Athanasiou 3****a 83
dladrichem 1****m 41
Santonia27 1****7 30
GundulaW 7****W 24
kathrynroscoe 7****e 19
Sam Vente s****3@p****e 10
Hofer-Julian 3****n 8
peiter p****r@T****y 7
hofer_jn h****n@T****y 6
Sarwan p****n@l****l 3
Tim de Wilde 1****w 2
laurscham 1****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 254
Total pull requests: 422
Average time to close issues: 3 months
Average time to close pull requests: 8 days
Total issue authors: 11
Total pull request authors: 15
Average comments per issue: 0.7
Average comments per pull request: 0.29
Merged pull request: 359
Bot issues: 0
Bot pull requests: 0

Past year issues: 106
Past year pull requests: 261
Past year average time to close issues: about 2 months
Past year average time to close pull requests: 8 days
Past year issue authors: 9
Past year pull request authors: 10
Past year average comments per issue: 0.56
Past year average comments per pull request: 0.36
Past year merged pull request: 214
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/Deltares-research/FloodAdapt

Top Issue Authors

  • GundulaW (59)
  • kathrynroscoe (55)
  • panosatha (52)
  • dladrichem (33)
  • LuukBlom (29)
  • Santonia27 (12)
  • WOTrompDeltares (5)
  • Jaapel (4)
  • savente93 (3)
  • frederique-hub (1)
  • srpeiter (1)

Top Pull Request Authors

  • LuukBlom (121)
  • panosatha (97)
  • Santonia27 (52)
  • dladrichem (51)
  • kathrynroscoe (35)
  • GundulaW (29)
  • dumontgoulart (14)
  • savente93 (13)
  • Jaapel (3)
  • tim-d-w (2)
  • frederique-hub (1)
  • laurscham (1)
  • Mares2022 (1)
  • srpeiter (1)
  • maartenvanormondt (1)

Top Issue Labels

  • enhancement (63)
  • beta release (59)
  • bug (46)
  • Needs refinement (43)
  • needs refinement (39)
  • Bug (34)
  • Feature (26)
  • Maintenance (20)
  • Events tab (12)
  • Fully functional events tab (9)
  • Sep30 (9)
  • Database builder (8)
  • fully functional output (7)
  • General functionality (7)
  • Refactoring (6)
  • high priority (5)
  • Meta issue (4)
  • fully functional measures (3)
  • Scientific (3)
  • Log file (3)
  • low priority (3)
  • Output (3)
  • fully functional comparison tab (3)
  • fully functional projections tab (2)
  • Backend (2)
  • Comparison tab (1)
  • All tabs (1)
  • Projections tab (1)
  • Fixed-in-refactor (1)
  • User Documentation (1)

Top Pull Request Labels

  • Sep30 (2)
  • Feature (2)
  • General functionality (1)
  • documentation (1)
  • Output (1)
  • Bug (1)
  • Needs refinement (1)
  • beta release (1)

Package metadata

pypi.org: flood-adapt

A software package support system which can be used to assess the benefits and costs of flood resilience measures

  • Homepage:
  • Documentation: https://flood-adapt.readthedocs.io/
  • Licenses: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication
  • Latest release: 0.3.1 (published 3 days ago)
  • Last Synced: 2025-04-26T12:36:01.903Z (2 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent packages count: 9.251%
    • Average: 30.681%
    • Dependent repos count: 52.11%
  • Maintainers (1)

Dependencies

.github/workflows/lint.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • crate-ci/typos master composite
pyproject.toml pypi
  • cht_cyclones *
  • cht_meteo *
  • cht_observations *
  • cht_tide *
  • geopandas *
  • hydromt *
  • hydromt_fiat @ git+https://github.com/Deltares/hydromt_fiat.git@fiat_integrator
  • hydromt_sfincs *
  • numpy *
  • pandas *
  • plotly *
  • pydantic *
  • tomli *
  • tomli-w *
environment.yml conda
  • black
  • build
  • census
  • geopandas
  • hydromt 0.8.0.*
  • mypy
  • numpy
  • numpy-financial
  • pandas
  • pip
  • plotly
  • pre-commit
  • pydantic 1.10.9.*
  • pyogrio
  • pytest
  • python 3.10.*
  • ruff
  • tomli
  • tomli-w
  • twine
  • typos

Score: 6.642486801367257