Typed models for the Sienna power system data format — every component, association, and time series row, generated from one set of OpenAPI schemas and shipped as a matched package per language.
What this is not: a power-flow solver, an optimization framework, or a simulation engine. These models carry no numerics; they are the input format, not the tool.
| Language | Package | Status | README |
|---|---|---|---|
| Python | power-openapi-models on PyPI |
Released | python/ |
| TypeScript | @sienna-platform/power-openapi-models on npm |
Released | typescript/ |
| Rust | — | Upcoming | rust/ |
Each package's own README covers install, quickstart, concepts, and API details for that language. Start there; this file is only a router.
The packages are not merely generated from one schema — a CI gate compares
the generated surfaces field by field (names, requiredness, enum values,
scalar kinds, defaults) and fails the build when they disagree. See
scripts/check_cross_language.py.
.schema-version at the repo root pins the exact SiennaSchemas release every
language package is generated from. All packages ship in lockstep: one
version number, one v* tag, released to every registry at once.
BSD 3-Clause. See LICENSE.