YAML to Zig Struct

Paste a YAML config and zigshape produces an idiomatic Zig struct. Anchors, aliases, and << merge keys are resolved; the Strict config preset turns observed scalars into const defaults.

Conservative u64; enums off; observed scalar values become Zig defaults — best for TOML/YAML configs.

or drop files

Fetched and dropped content stays in your browser.

Zig

Field decisions

struct Config $
  • Alternatives:
  • Alternatives:
  • Alternatives:
  • Alternatives:
struct Labels $.labels
  • Alternatives:
  • Alternatives:

YAML quirks zigshape handles

  • Multi-document YAML uses the first document, with a warning.
  • Anchors and aliases are resolved; merge keys (<<: *anchor) flatten into the parent map.
  • Date scalars come through as []const u8; switch to a custom adapter if you need a typed datetime.
  • Per-node source ranges flow through to the inspector — click a field to jump to its position in the YAML.

Need serde.zig decoration (rename rules, aliases, deny_unknown_fields)? See YAML to serde.zig.

Local-first. Your input never leaves the browser.