Schemas / v0.4
Icons
Schema for resolved icon manifests consumed by language servers and tooling.
Minimal example
This manifest declares the minimal resolved icons list. Each icon requires a
name and at least one platforms entry, and each platform
entry must assert at least one of import, usage, and
component, in any combination.
{
"$schema": "https://designlasagna.recipes/schemas/v0.4/icons.json",
"schemaVersion": "0.4.0",
"icons": [
{
"name": "lasagna",
"platforms": {
"web": {
"import": "lasagna-icon.js"
}
}
}
]
}
Manifest fields
The root object is the resolved icons manifest. Required fields are marked with *.
| Field | Type | Description |
|---|---|---|
|
|
string
|
Identifier of the schema that validates the manifest. |
|
Use when: Always set it so editors and validators can find the contract. Origin: Contract metadata; set by authors or generators. Example usage |
||
|
|
string
|
Schema version the manifest conforms to. |
|
Use when: Keep it in sync with the $schema document the manifest is validated against. Origin: Contract metadata; set by authors or generators. Related: Example usage |
||
|
|
string
|
ISO 8601 timestamp identifying the generation run that produced the manifest. |
|
Use when: Set by generators so consumers can detect and track stale manifests. Origin: Computed by analysis or build tooling. Example usage |
||
|
|
DesignSystemMeta
|
Identity of the design system the manifest describes. |
|
Use when: Help tooling label, group, and switch between design systems. Origin: Authored metadata, carried through by generators. Related: Example usage |
||
|
|
array
|
Resolved icons in the manifest. |
|
Use when: Provide the icon data that tooling completes, documents, and consumes. Origin: Resolved by generators from authored icon sources. Related: Example usage |
||
Icon fields
Each item in icons follows this shape.
| Field | Type | Description |
|---|---|---|
|
|
string
|
Stable icon identifier. |
|
Use when: Always provide it; consumers use it as the durable icon identity. Origin: Authored metadata. Related: Example usage |
||
|
|
string
|
Human-readable description of the icon. |
|
Use when: Use to give implementers the intent that a name cannot convey. Origin: Authored metadata. Related: Example usage |
||
|
|
array
|
Search keywords for autocomplete and AI matching. |
|
Use when: Use to improve discovery in autocomplete and documentation search. Origin: Authored metadata. Related: Example usage |
||
|
|
string
|
The icon's category, for grouping in browsing and autocomplete. |
|
Use when: Use to organise icons into named categories. Origin: Authored metadata. Related: Example usage |
||
|
|
array
|
Available sizes, such as '16', '24', or '32'. |
|
Use when: Use so tooling can offer and validate the icon's size variants. Origin: Authored metadata. Related: Example usage |
||
|
|
array
|
Style variants, such as 'outlined', 'filled', or 'rounded'. |
|
Use when: Use so tooling can offer the icon's style variants. Origin: Authored metadata. Related: Example usage |
||
|
|
integer
|
Sort weight for autocomplete, from 0 (lowest) to 100 (highest). |
|
Use when: Use to surface the most common icons first in tooling. Origin: Authored metadata. Related: Example usage |
||
|
|
string
|
Version or date when the icon was introduced. |
|
Use when: Use to make compatibility and migration decisions. Origin: Authored metadata. Related: Example usage |
||
|
|
lifecycle.json#/definitions/Status
|
Lifecycle status from the shared v0.4 lifecycle fragment; 'deprecated' and 'removed' are normative, other values are informational. |
|
Use when: Declare the normative lifecycle state of the icon, or carry informational states such as 'stable' or 'experimental'. Origin: Authored metadata. Related: Example usage |
||
|
|
Docs
|
Links to the icon's supporting documentation. |
|
Use when: Use when readers need to continue to design-system guidance outside the manifest. Origin: Authored metadata. Related: Example usage |
||
|
|
object
values: PlatformIcon
|
Platform-specific icon references, keyed by platform identifier; at least one platform is required. |
|
Use when: Always provide at least one platform so tooling can realise the icon. Origin: Generated or authored mapping. Related: Example usage |
||
|
|
lifecycle.json#/definitions/NativeDeprecation
|
Native deprecation record from the shared v0.4 lifecycle fragment; may be false, null, or a record with a required message. |
|
Use when: Guide consumers away from an icon while it remains available, recording its replacement and removal target. Origin: Authored metadata. Related: Example usage |
||
|
|
array
|
Arbitrary classification labels for the icon. |
|
Use when: Use to classify icons for targeted lint rules and filtering. Origin: Authored metadata. Related: Example usage |
||
Nested definitions
Reusable shapes referenced by the fields above.
Deprecated
Deprecation record for a native manifest entity; defined in the shared lifecycle fragment (lifecycle.json) and referenced from this schema, permissive of unknown properties.
lifecycle.json#/definitions/Deprecated
DesignSystemMeta
Identity and discovery metadata for the design system that produced the manifest.
| Field | Type | Description |
|---|---|---|
|
|
string
|
Display name of the design system. |
|
Use when: Identify the design system in documentation and tooling. Origin: Authored metadata. Example usage |
||
|
|
string
|
Version of the design system. |
|
Use when: Track which design-system version a manifest describes. Origin: Authored metadata; maintained with releases. Example usage |
||
|
|
string
|
Documentation links for the design system. |
|
Use when: Point consumers to the design system's documentation. Origin: Authored metadata. Example usage |
||
|
|
string
|
Package identifier of the design system. |
|
Use when: Map the manifest to its published package. Origin: Authored metadata. Example usage |
||
|
|
object
|
URL templates for generating documentation links. |
|
Use when: Configure how tooling builds documentation links for icons. Origin: Authored metadata. Example usage |
||
Docs
Documentation and design-tool links for an icon.
| Field | Type | Description |
|---|---|---|
|
|
string
|
Primary documentation page for this item. |
|
Use when: Provide it as the canonical destination for detailed guidance. Origin: Authored metadata. Related: Example usage |
||
|
|
string
|
Figma reference for the design or component. |
|
Use when: Use when implementers need to compare the rendered result with the design source. Origin: Authored metadata. Related: Example usage |
||
|
|
string
|
Storybook reference for live component states. |
|
Use when: Use when readers benefit from interactive examples. Origin: Authored metadata. Related: Example usage |
||
PlatformIcon
How one icon is realised on a specific platform: at least one of an import path, a usage snippet, and a component name, in any combination.
| Field | Type | Description |
|---|---|---|
|
|
string
|
Module or asset path that imports the icon on this platform. |
|
Use when: Use when the platform consumes the icon through an import or module reference. Origin: Generated or authored mapping. Related: Example usage |
||
|
|
string
|
Usage snippet that renders the icon on this platform. |
|
Use when: Use when the platform expresses the icon as ready-to-paste usage rather than an import. Origin: Generated or authored mapping. Related: Example usage |
||
|
|
string
|
Component name that renders the icon on this platform. |
|
Use when: Use when the platform exposes the icon as a named component. Origin: Generated or authored mapping. Related: Example usage |
||