Describe things with design.json
Shared contracts for design-parity: DesignReference, CandidateRender, tokens, semantics, verdict, and the design-map schema.
Deterministic a11y + i18n spec checks over a DesignReference / CandidateRender pair. No model at run time — only committed rules and thresholds.
Parity direction policy: the committed .design-parity.json config (schema, loader, validator CLI) and the deterministic auto -> design-led/code-led resolver.
Self-contained HTML comparison page per parity run: reference | candidate | diff side by side with the verdict findings, inlined to one offline .html file (data-URI PNGs + inline CSS/JS, no external assets).
Figma ReferenceAdapter: resolves a component to a Figma node via Code Connect, fetches the reference image + variables over the REST API, and normalizes to a DesignReference.
Source-agnostic diff engine: consume a (DesignReference, CandidateRender) pair and emit a deterministic Verdict — a11y + i18n first, then token compliance, then visual diff.
Claude Design reference adapter: resolves a committed HTML export via design-map.json, rasterizes it headlessly, and normalizes to a DesignReference. Claude Design has no read API and no Figma export.
Pluggable candidate sources: a static compose-ai-tools preview-bundle reader, a wrapper over the upstream compose-preview CLI, and stubs for local Compose-for-Web and daemon rendering — all normalizing into a CandidateRender.
Google Stitch ReferenceAdapter: resolves a component to a Stitch design via design-map.json, fetches HTML+Tailwind through the Stitch SDK, rasterizes a reference image, and normalizes to a DesignReference.
Image-bundle reference adapter: resolves a committed directory or .zip of reference PNGs plus a manifest.json (linked via design-map.json) and normalizes to a DesignReference. Covers any design tool with no read API or HTML export — just a dump of exporte