Kimo
Docs
v1.0
Changeloggetkimo.design
Docs
v1.0
File format spec
App. A

Canonical key order

Status
Stable (format version 1.0.0, frozen 2026-10). Backward compatible within 1.x (§16.4). Supersedes the draft v0.1, kept as a historical record; 0.1 files open through the 0.1 → 1.0 migration (§16.2).
Schema
https://getkimo.design/schema/kimo-1.0.json (JSON Schema draft 2020-12), generated into packages/core-schema/schema/kimo-1.0.schema.json. The 0.1 schema stays published at …/kimo-0.1.json (schema/kimo-0.1.schema.json, frozen).
Reference
@kimo/core-schema (packages/core-schema). Where this document and the implementation disagree, that is a bug in one of them; file an issue.
Plan of record
docs/teardown.md §10. Every place where this spec resolves an ambiguity in, or deviates from, that section is listed in §20.
License
MIT

$schema, format, type, kind, space, mode, $ref, stops, parent, at, order, name, library, createdWith, of, component, placeholder, by, since, locked, text, inner, x, y, position, w, t, r, g, b, l, c, h, alpha, fallback, font, center, size, weight, strokeWidth, min, max, italic, lineHeight, px, letterSpacing, rotation, flipX, flipY, theme, props, args, overrides, content, grow, style, set, icon, d, fillRule, viewBox, sides, innerRadius, startAngle, sweepAngle, src, inputs, url, device, zoom, scrollX, scrollY, model, radius, clip, cols, rows, colors, points, interpolation, fit, crop, uniforms, blur, spread, color, opacity, blend, visible, fill, stroke, effects, dir, gap, crossGap, pad, justify, mime, bytes, paint, width, height, align, valign, cap, join, miterLimit, dash, wrap, includeStroke, layout, slot, suggested, replace, decoration, case, features, href, typography, value, unit, when, description, group, target, field, default, options, meta, themes, imports, variables, assets, components, nodes

(The root meta is a struct; a node's meta is a record.)

Keywords:
MUST
MUST NOT
SHOULD
MAY
set in small mono caps wherever they are normative