Skip to main content

pourpoint

pourpoint is the Python package for the pourpoint watershed delineation engine. Give it a point on a river and it returns the whole upstream watershed as a polygon. It reads HFX datasets, which are folders of pre-built river-network files. Only HFX v0.3.0 datasets load; older versions report a clear unsupported format error.

The wheel bundles the full native stack, including GDAL, PROJ, GEOS, libtiff, SQLite, and more, so no system GDAL install is needed.

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.

Zero-download quickstart

Use the hosted public GRIT (Global River Topology) dataset without downloading it first:

import pourpoint

# No local dataset: this reads the hosted GRIT dataset over the network.
engine = pourpoint.Engine("https://basin-delineations-public.upstream.tech/grit/hfx-v0.3.0/")
result = engine.delineate(lat=47.3769, lon=8.5417)
print(result.area_km2)

The engine fetches only the pieces of the dataset it needs, so the full dataset never lands on your machine. The one public dataset hosted today is GRIT 2.0.0 (the source river network), compiled to HFX v0.3.0 (the format version). To use a different HFX dataset, change the URL and nothing else in your code changes.

Local quickstart

import pourpoint

engine = pourpoint.Engine("/path/to/hfx/dataset")
result = engine.delineate(lat=47.3769, lon=8.5417)
print(result.area_km2)

Engine accepts local paths and remote dataset URLs such as s3:// and https://. For constructor options such as snap search radius and geometry repair, see the Tuning Knobs section of API.md.

Reuse the Engine

The first open fetches dataset metadata over the network and is slower, so keep the engine around and reuse it. Repeated delineations in the same session reuse data already fetched, so overlapping watersheds are faster.

Going further

Logging and verbose output, batch delineation with a progress callback, the staged step-by-step API, and GeoParquet export are documented in API.md and on the docs site at https://cooperbigfoot.github.io/pourpoint/.

What it does

  • Finds the catchment your point sits in.
  • Gathers every catchment upstream.
  • Merges them into one watershed polygon.
  • Returns the geometry plus geodesic area in km².

API Reference

For the full developer-oriented API surface, including argument types, return types, and the exception hierarchy, see API.md.

Links

Metadata

Release files for pourpoint 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pourpoint 0.3.0
File Size Uploaded
pourpoint-0.3.0.tar.gz 739.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for pourpoint 0.3.0
File
pourpoint-0.3.0-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details
pourpoint-0.3.0-cp39-abi3-manylinux_2_28_x86_64.whl CPython 3.9 abi3 Linux glibc 2.28+ x86-64 Details
pourpoint-0.3.0-cp39-abi3-manylinux_2_28_aarch64.whl CPython 3.9 abi3 Linux glibc 2.28+ ARM64 Details
pourpoint-0.3.0-cp39-abi3-macosx_11_0_x86_64.whl CPython 3.9 abi3 macOS 11.0+ x86-64 Details
pourpoint-0.3.0-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details

Total release size: 140.9 MB

Release files / pourpoint-0.3.0.tar.gz

Download URL pourpoint-0.3.0.tar.gz
Size 739.8 kB
Tags Source
SHA-256 checksum
How to use checksums
7393788dfcce173a5fd0944a04addb175eb5018ce83d94b45ca59b187c6ae7ac
BLAKE2b-256 checksum
How to use checksums
2bad6a2489f9863d8110a934df0f82fd4dc5ee454e7f016c9c7032597227379b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Release files / pourpoint-0.3.0-cp39-abi3-win_amd64.whl

Download URL pourpoint-0.3.0-cp39-abi3-win_amd64.whl
Size 48.7 MB
Tags CPython 3.9 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
205977f0a86b632b0f15b2bf314f2acc4149c7579f5db73c41e8ade3ac5dedd0
BLAKE2b-256 checksum
How to use checksums
5bf461c5ace0ac139229d60d62cdaeea943e2ef53869860f8fbb6e811feaa301
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Release files / pourpoint-0.3.0-cp39-abi3-manylinux_2_28_x86_64.whl

Download URL pourpoint-0.3.0-cp39-abi3-manylinux_2_28_x86_64.whl
Size 23.3 MB
Tags CPython 3.9 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
1ecf0ea1ae684935a9ba7114f1c5c4960f26c551fc0f2c286afbd966c9230b87
BLAKE2b-256 checksum
How to use checksums
1dacfff6abaa75155fe71a090a809fab2c84215ff506a2ecc4bbbec06fdf125d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Release files / pourpoint-0.3.0-cp39-abi3-manylinux_2_28_aarch64.whl

Download URL pourpoint-0.3.0-cp39-abi3-manylinux_2_28_aarch64.whl
Size 22.3 MB
Tags CPython 3.9 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
3d5ce30a9f9b0cbdd0a595cdb269c891bd59e300549506e4f28b3d21059caa8d
BLAKE2b-256 checksum
How to use checksums
79ce1a06fec6da1ac9b556469c4974eb320ae7daa68d056b63f1f0246a72ab09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Release files / pourpoint-0.3.0-cp39-abi3-macosx_11_0_x86_64.whl

Download URL pourpoint-0.3.0-cp39-abi3-macosx_11_0_x86_64.whl
Size 23.5 MB
Tags CPython 3.9 abi3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
3f5638a6a7f921bc850e3e3a43c74746a9b0770fdae84767dab8d95e34f01327
BLAKE2b-256 checksum
How to use checksums
82b3d12d7e2cee637f9c6ce867e71901c46389562e452bcca85d93bcf7e86e09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Release files / pourpoint-0.3.0-cp39-abi3-macosx_11_0_arm64.whl

Download URL pourpoint-0.3.0-cp39-abi3-macosx_11_0_arm64.whl
Size 22.3 MB
Tags CPython 3.9 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a79ebc38be0cdc39247fd07eb608750536c982999954bd68e3ccf5599fefdabe
BLAKE2b-256 checksum
How to use checksums
974d5ca805d6767e9fe075cc2443e7307b5d06e65af55719e10a513084ad2d79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.0 This release

6 release files

0.1.0

6 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page