Understanding Design Components
Categories:
When you’re designing and visualizing in Kanvas, you’ll encounter a rich library of components. This guide will help you understand what these components mean and how they behave in your designs.
Core Component Categories π
Components in Kanvas fall into two fundamental categories, distinguished by whether they can be orchestrated (managed) during deployment.
Semantic Components (Orchestratable) π
These components represent actual infrastructure resources that Kanvas can understand and manage during deployment. They are “meaningful” because they map directly to real infrastructure elements. Examples include:
- Kubernetes resources (Pods, Services, Deployments)
- Cloud provider resources (AWS S3 buckets, Azure Functions)
- Infrastructure components (Load Balancers, Databases)
These components are orchestratable because Kanvas can create, configure, and manage their lifecycle during deployment.
Visual Distinction Rule
To help users quickly distinguish between component types, Kanvas follows a clear visual design rule:
- Semantic (Configurable) Components: Have a background to represent their status as “real” infrastructure resources
- Non-semantic (Annotation) Components: Have transparent backgrounds, as they are purely visual aids
Non-semantic Components (Annotation-Only) π
These components are visual and organizational elements that help document and organize your designs. They are “meaningless” in terms of infrastructure because they don’t represent deployable resources. Examples include:
- Text boxes and comments
- Shapes and containers for grouping
- Arrows and lines for relationships
- Labels and tags
Kanvas ignores these components during deployment as they are purely visual/organizational elements.
Visual Customization
All components, whether semantic or non-semantic, support rich visual customization. For example, you can change a Kubernetes Pod’s color from blue to green, modify its shape, or replace its background logo - it’s all configurable!Semantic Components π
These components represent real infrastructure that Kanvas can manage. They can be either built-in (like Kubernetes components) or custom components that you create.

Kanvas provides a rich ecosystem of semantic components through various integrations. While Kubernetes is a commonly used example, all integration models (like KEDA, Istio, AWS, etc.) provide components with the same orchestratable capabilities. To help you navigate this ecosystem, Kanvas organizes these components in a clear hierarchy:
Integration Hierarchy
Kanvas organizes integrated components in a clear hierarchy:
- Categories: High-level groups (e.g., “Cloud Native Network”, “Database”)
- Integration Models: Specific technologies (e.g., “AWS App Mesh”, “Prometheus”, “Kubernetes”)
- Semantic Components: Functional building blocks that can be deployed and managed
Kubernetes Components Example π
To illustrate how semantic components work in practice, let’s examine Kubernetes components. As one of the most widely used integration models, Kubernetes components demonstrate how Kanvas implements its design principles while maintaining a distinct visual style:

For Kubernetes resources, Kanvas employs a thoughtful design system built on these key principles:
Principle 1: Color and Structure
- Uniform Color Scheme: Kubernetes component icons typically use a distinctive blue background as a standard identifier
- Standardized Icon Structure: The fundamental structure is consistent: an outer container shape with the blue background, encompassing a unique inner white symbol
- Meaningful Inner Symbols: The white symbol inside each icon is the crucial unique identifier for that specific Kubernetes Kind
Principle 2: Shape as an Indicator
The blue background is framed by different outer shapes that help identify the component’s role:
- Triangles: Used for core networking resources like
Service
andAPI Service
- Hexagons: Used for foundational workload controllers like
StatefulSet
- Unique Polygons: Used for specialized resources like
Endpoints
,PriorityClass
, orValidatingWebhookConfiguration
Exploring All Integrations
This guide covers the visual style of components. For a complete catalog of all technologies that Kanvas integrates, visit the integrations directory.Non-semantic Components π
These components help you document and organize your designs without affecting the actual infrastructure. They include:

Generic Shapes π
The “Shapes” palette offers a diverse collection of annotation-only components for general-purpose diagramming. These are purely visual elements that won’t be deployed.

Arrows π
Arrows are annotation-only components for showing direction or creating simple visual annotations. They are static shapes intended for illustration.

Looking for Dynamic Connections?
The arrows shown here are static visual aids. To represent actual, functional relationships between semantic components (like network traffic or dependencies), you should use the Edge system instead. Learn moreFlowchart Shapes π
Kanvas includes a dedicated palette of standard flowchart shapes. These are annotation-only components that help document your design’s logic and flow.

Simple Line Icons π
Kanvas provides a comprehensive library of Simple Line Icons as annotation-only components. These icons are intended for user-driven annotations and visual enhancement.

Component Visuals in Different Contexts π
A single semantic component will be visually represented differently depending on where you encounter it in Kanvas. Let’s take the Deployment component as an example:
- Deployment component with its distinctive shape and badge:

- Deployment icon as it appears in a component selection panel:

- Deployment component as seen in a cluster resource overview:

Learn More About Interpreting Designs
To learn how to interpret and understand designs in practice, including how components work together in a design, visit our comprehensive guide in the Layer5 Academy.Recent Discussions on Kanvas
- Oct 14 | Explore Meshery's Published Relationship Design Examples by Awani Alero
- Oct 03 | Design Review RFC: Kanvas Empty State Enhancement by Lee Calcote
- Jul 19 | [For Discussion] Visual indication of semantically vs non-semantically meaningful Meshery components by Lee Calcote
- Jun 07 | What are the conditions for a "System is unhealthy" warning? by James
- May 30 | Looking for a meshmate to help with first PR by Faisal Imtiyaz123
- Feb 28 | For Discussion: Capturing potential, but unrealized Relationships in Design Snapshots by Lee Calcote
- Feb 12 | Hint on Scaling & Verifying Cronjob in Playground by Sandra Ashipala
- Sep 28 | Trying to add screenshots of Containerd & Curiefense integration by Raman Thakur