Tool · shared contracts

Keep your source
of truth.

Extend the standards you author in, then generate dependable manifests for documentation and tools.

Your DTCG token documents and Custom Elements Manifest remain authoritative. Design Lasagna adds optional source-side metadata where those standards need more context, then analyses that source data into derived manifests for consumers.

The big picture

Two layers.
One useful system.

Extensions and manifests have different jobs. Keeping that boundary clear means your team can retain its existing source files while tools get the data they need.

Layer one · authored additions

Extensions

Add optional Design Lasagna context to the standards your team already authors.

Lives in
DTCG token files and Custom Elements Manifests
Written by
People maintaining the source data
Validated by
DTCG and CEM extension schemas

Layer two · generated views

Manifests

Publish resolved, tool-oriented views of that source data for consumers.

Lives in
Generated JSON files alongside your published package
Written by
Analysis and build tooling
Validated by
Token, utility, and icon manifest schemas

Layer one · extensions

Enrich existing
standards.

Extensions are optional, human-authored additions. They do not replace DTCG or CEM; they carry the design-system context those formats do not model.

DTCG source files

Token extensions

Use $extensions["recipes.designlasagna"] for documentation, usage, lifecycle, search, accessibility, and governance metadata that cannot be inferred by a resolver.

Open DTCG extension reference →

Custom Elements Manifest

CEM extensions

Add lifecycle status, deprecation details, and migration targets to CEM declarations and members. A normal CEM remains valid without them.

Open CEM extension reference →

Layer two · manifests

Publish derived
views.

Manifests are generated outputs, not another source file to maintain. They make resolved design-system data dependable for consumers.

Generated manifest

Resolved tokens

Resolved values, identifiers, paths, modes, and the source-side metadata that tools and documentation need.

Open token-manifest reference →

Generated manifest

Icons

A stable, machine-readable view of an icon library for the tools that need to discover and describe it.

Open icon-manifest schema →

How the layers connect

Source in.
Useful output out.

Authoritative sources

DTCG token files, CEM, and other published design-system data.

Optional extensions

Human-authored Design Lasagna metadata where the source standard needs more context.

Analyse and generate

Resolve source data into manifest files for consumers.

Published output

Derived manifests

Versioned JSON views that make the system’s published data consistent and consumable.

Validation

Check authored extensions and generated shapes before consumers rely on them.

Automated documentation

Turn structured data into an accurate, readable reference.

Editor tooling

Give tools dependable data for help, diagnostics, and migration guidance.

Start with the contract

Readable for people.
Dependable for tools.

Every version has stable raw URLs, package exports, and human-readable references. Use the references to understand a field; use the raw schema wherever a tool needs the exact contract.