Skip to main content

usdata

Discover U.S. scientific datasets, fetch their files, and keep a reproducible record of where every input came from. One Python SDK and CLI across supported NOAA and USGS datasets, with provenance sidecars and lockable manifests.

Pre-alpha. Features marked Unreleased in the documentation require a source installation; the changelog lists what each published version contains.

Documentation

Site For
usdata.dev What the package is for: the dataset browser and worked examples with saved results
docs.usdata.dev Using the package: install, first dataset, guides, dataset notes, and reference
This repository Changing the project: everything below, plus contributing, architecture, testing, decisions, roadmap, and versioning
pip install "usdata[pandas]"
usdata search precipitation --location Oklahoma
usdata info noaa:ghcn-daily

Development

Requires a source checkout, uv, and just:

git clone https://github.com/jakeryderv/usdata && cd usdata
just setup     # install toolchain and dependencies
just check     # format, lint, typecheck, offline tests, generated docs, release notices

just setup uses the tested Python 3.14.7 pin in .python-version. Older Linux uv Python 3.14 builds can crash during NumPy array operations; see the upstream fix.

just hooks-install # optional: install fast staged-file checks
just test      # all offline tests
just check-pandas  # install the CSV extra and run the same checks
just check-radar   # install the radar extra and run the same checks
just check-netcdf  # install the NetCDF4 extra and run the same checks
just check-grib    # install the GRIB2 extra and run the same checks (Linux, Windows <= 3.13)
just notebooks    # launch the optional Jupyter examples environment
just run-notebooks # execute notebooks live in fresh kernels and temporary caches
just docs-serve # build and preview the documentation locally, with reload
just check-docs # validate generated content and build the site strictly
just build     # build wheel and sdist
just smoke     # exercise core and pandas wheel installations outside the checkout
just changes   # preview upcoming release notes
just cleanup 123 # from main: remove PR #123's merged branch and clean worktree
just run search radar

Commit hooks fix and format staged Python files using the locked Ruff version, and check configuration, merge conflicts, and GitHub Actions workflows. Full validation remains just check; just check-hooks runs the non-mutating config and workflow checks alone. Hooks do not rewrite notebooks or raw data fixtures. The first hook run downloads its isolated tools and requires network access.

Offline tests mechanically block network connections. Tests that hit live services run with just test-live; see testing levels and organization. CI checks Python 3.11 and 3.14 on Linux with core-only, pandas, radar, NetCDF, and GRIB2 dependency profiles. A further Python 3.11 profile replaces the locked pandas with the oldest release the project declares, so the >= floor is executed rather than assumed; the number comes from pyproject.toml through scripts/lowest_version.py. Installed-wheel checks cover core, pandas, radar, and NetCDF on Linux, macOS, and Windows. The full offline and live-service suites run on Linux. just setup restores a core-only development environment; the check-* commands install their respective extras.

Releases: just release minor prepares a release branch. Update release notices, then just release-pr validates and opens a draft for review. Merging the reviewed PR publishes to PyPI and creates the tag and GitHub release, then walks the published package through the getting-started guide. See versioning.

The main way the project grows is a new dataset: one registry entry and one adapter, following adding a dataset. The two websites deploy automatically from main; see website operations and maintaining documentation.

License

Apache-2.0.

Release files for usdata 0.18.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 usdata 0.18.0
File Size Uploaded
usdata-0.18.0.tar.gz 240.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for usdata 0.18.0
File Interpreter ABI Platform
usdata-0.18.0-py3-none-any.whl Python 3 none any Details

Total release size: 515.0 kB

Release files / usdata-0.18.0.tar.gz

Download URL usdata-0.18.0.tar.gz
Size 240.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b9b68037d3321c4073bacab6cdfacbfd3ba4d18dfa19384c4f48bcf3f3bfcf08
BLAKE2b-256 checksum
How to use checksums
448da8045e2b69b25c8b81549062ce54a90b26435f8c53b8c98ce79f9aa0def7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.15 {"installer":{"name":"uv","version":"0.12.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / usdata-0.18.0-py3-none-any.whl

Download URL usdata-0.18.0-py3-none-any.whl
Size 274.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
97a64a041f2f9de85ac4c441df8da6e89d4073684fd838cb7be0d0e008c46155
BLAKE2b-256 checksum
How to use checksums
50922c24f46b8c60c7f9cab0062346be39c8004be45c5368bd8775ba7dde9fdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.15 {"installer":{"name":"uv","version":"0.12.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.27.0

2 release files

0.26.0

2 release files

0.25.0

2 release files

0.24.0

2 release files

0.23.0

2 release files

0.22.0

2 release files

0.21.0

2 release files

0.20.0

2 release files

0.19.0

2 release files

This release

0.18.0 This release

2 release files

0.17.0

2 release files

0.16.0

2 release files

0.15.0

2 release files

0.14.0

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 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