storm-events-aoi

unverified
v0.1 AOI: bbox -98.70, 29.20, -94.80, 33.00

Storm damage totals by event type within an area of interest, 1950-present. Reads NOAA's Storm Events Database (~2.0M events) as cloud-native GeoParquet, clips to the AOI by bounding-box overlap, and aggregates event counts, property + crop damage, deaths, and injuries grouped by event type. Answers "what has hit this place, how often, and how bad?" for any US location. The filtered event rows are the show-your-work — every dollar in the total traces back to a specific NCEI event record.

Primary outputs
result/by-event-type
Show your work
compute/in-aoi
License
recipe
Apache-2.0
outputs
public-domain
Map preview and live runs are available in the workbench.

The contract

legacy dialectcandidate

Read from this recipe's own declarations — parameters:, outputs:, requires:, and the ops its layers name. Not from its style blocks and not from any benchmark: a colour ramp is not a contract, and a measured run is evidence about one AOI rather than a domain.

Parameters

The legacy dialect has no typed parameter schema. Read the folia.yaml for what this recipe takes; nothing here can type-check it.

Outputs

outputkindlayerwhat it is
primary not declared ['result/by-event-type']
show_your_work not declared ['compute/in-aoi']

Capabilities it requires

The legacy dialect has no requires: block.

Where it runs

  • Browser preview does not run here compute/in-aoi: carries an unsubstituted ${...} template; result/by-event-type: depends on layer "compute/in-aoi", which cannot run here; source/events: source uri "@noaa/storm-events" is not fetchable from a browser
  • Local CLI (folia run) runs here runs locally through the legacy (no spec_version) parser
  • Operated fleet (POST /plan, /run) runs here legacy dialect: a lock binds by the cut's layer names, not by digest
open in Workbench from registry/recipes/storm-events-aoi/folia.yaml