Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

xtremax Design Doc

Extreme value modeling with JAX and NumPyro.

Structure

xtremax/
├── design_overview.md          # This file
├── vision.md              # Motivation, user stories, design principles, identity
├── architecture.md        # Layer stack, package layout, dependencies
├── boundaries.md          # Ownership, ecosystem, scope, testing, roadmap
├── api/
│   ├── api_overview.md    # Surface inventory, conventions, notation
│   ├── api_primitives.md  # Layer 0 — pure JAX functions (GEV, GPD, point process, max-stable math)
│   ├── api_components.md  # Layer 1 — NumPyro distributions, xarray utilities, plotting, simulations, datasets
│   └── api_models.md      # Layer 2 — model zoo (stationary/nonstationary/spatial GEV, POT, PP)
├── examples/
│   ├── examples_overview.md    # Index and reading order
│   ├── examples_primitives.md  # Layer 0 — pure JAX functions, return levels, gradients
│   ├── examples_components.md  # Layer 1 — NumPyro distributions, xarray extraction, plotting
│   ├── examples_models.md      # Layer 2 — model zoo workflows (MCMC, SVI)
│   └── examples_integration.md # Layer 3 — geo_toolz, ecosystem composition
└── decisions.md           # Design decisions with rationale

Reading Order

  1. Vision — understand the why

  2. Architecture — understand the layer stack

  3. Boundaries and Ecosystem — understand the scope

  4. API Overview — scan the surface

  5. Layer 0 — Primitives → api_components.md → api_models.md — drill into detail

  6. examples/ — see it in action

  7. Design Decisions — understand the tradeoffs