hydromodpy.data.scaffold#

Workspace scaffolding.

Called by hmp workspace init to create the HydroModPy workspace: one data/<variable>/ folder per variable, a shared cache, and a projects/ directory.

Called by hmp new <project> to create a project inside the workspace.

Each data/<variable>/ folder is a flat drop zone. The provider is encoded in the file NAME, never in the directory: <variable>_custom_* for files the user provides, <variable>_<api>_* for files HydroModPy downloads from an API. Both live side by side. The runtime data loaders read these folders directly (hydromodpy.data.store.DataStore); hydromodpy.data.auto_scan indexes the custom files in data/cache.duckdb at the start of every hmp run.

Functions

create_project(workspace_root, name)

Create a new project inside the workspace.

scaffold([root_dir, with_examples])

Create the HydroModPy workspace folder layout.

Classes

VariableSpec(name, file_prefix, category, ...)

One variable folder created under <workspace>/data/.