Skip to content

pourpoint

pourpoint is a watershed-delineation engine: give pourpoint a point on a river and it returns the whole upstream area that drains to it, the watershed. pourpoint is its Python interface.

A hydrofabric is a pre-built map of a river network — its streams, the land patches (catchments) that drain into each stream, and which catchment flows into which downstream — of the same kind hydrologists already work with in NHDPlus, HydroSHEDS, or MERIT-Hydro. pourpoint reads any hydrofabric published in the open HFX (HydroFabric Exchange) format, a folder of pre-built river-network files. The same delineation runs over GRIT (Global River Topology; Wortmann et al. 2025), MERIT-Basins, and any other HFX dataset. A hosted GRIT dataset is available to point at directly, so you can delineate your first watershed without downloading anything.

Who it's for

Hydrologists, water-resource scientists, and engineers who need watershed polygons and areas from outlet coordinates, interactively, in batch, or inside a pipeline. You work in Python; the heavy lifting runs in a compiled Rust core with GDAL bundled inside the wheel, so there is no system GDAL to install.

Install

uv add pourpoint

(or pip install pourpoint)

Prebuilt wheels are published for:

  • macOS (Apple Silicon + Intel)
  • Linux (x86_64 + aarch64)
  • Windows (x86_64)

as macosx_11_0_arm64, macosx_11_0_x86_64, manylinux_2_28_x86_64, manylinux_2_28_aarch64, win_amd64.

Where to go next

  • Quickstart: from install to a first delineated watershed in one script.
  • How it works: how pourpoint finds every catchment upstream of your point and merges them into one watershed, using connections the hydrofabric has already computed.
  • Datasets: what an HFX hydrofabric is and how to point pourpoint at one.
  • Staged API: run the delineation pipeline stage by stage.
  • Basin GeoParquet Export: write basins to GeoParquet for downstream analysis.
  • API Reference: the complete public pourpoint surface.
  • Credits & Citation: the algorithm's origin and how to cite pourpoint.