Components

Summary

A Component describes a software component. It is typically intimately linked to the source code that constitutes the component, and should be what a developer may regard a "unit of software", usually with a distinct deployable or linkable artifact.

Definition

!!! info "Backstage Docs"

See [the backstage docs](https://backstage.io/docs/features/software-catalog/descriptor-format/#kind-component) for a full description of the `Component` entity definition.

As with all other entities, a component consists of the envelope types, apiVersion and kind, as well as generic metadata and a specific spec.

{% include-markdown "../references/entity-envelope.md" start="" end="" heading-offset=1 %}

kind [Required]

The kind is the high level entity type being described. For a software component this must be Component, e.g. kind: Component.

Other available kinds are enumerated in the entity types reference.

{% include-markdown "../references/entity-envelope.md" start="" end="" heading-offset=1 %}

{% include-markdown "../references/entity-metadata.md" start="" end="" heading-offset=2 %}

spec [Required]

The actual specification data that describes the entity.

{% include-markdown "../references/component-spec.md" start="" end="" heading-offset=2 %}