Canon
Performance Components
Performance components turn the owned CREATE SOMETHING design language into workflow maps, policy states, receipts, validation gates, and operator handoff.
Published June 21, 2026
What Ships Today
PerformancePageSection: open page bands for claims, proof, actions, and asidesPerformancePlatformHero: first-viewport product, system, or platform anchorsPerformanceProofStrip: compact evidence objects scanned togetherPerformanceDecisionPanel: allow, review, block, or neutral decision statesPerformanceStateRows: explicit run, wait, stop, or handoff rowsPerformanceReceiptGrid: delivery evidence, artifacts, and validation receiptsPerformanceArtifactCard: one evidence object with status and linkPerformanceCtaBand: restrained next-action bandsPerformanceActionFooter: final page-level actions with proof and restraintPerformanceCardGrid: repeated evidence cards without nested-card shellsPerformanceContentHighlights: compact highlights for claims, facts, and receiptsPerformanceErrorPage: plain-language failure state with recovery pathPerformanceLogoStrip: partner, proof, or trust marks with accessible labelsPerformanceMetadataRail: dense metadata, owners, receipts, and state factsPerformancePillarGrid: pillar summaries for proof-bearing systemsPerformanceQuoteMetricPanel: quote and metric pairings for validated claimsPerformanceSecurityPanel: trust, policy, and control evidence for sensitive surfacesPerformanceUseCaseBand: use-case summaries tied to concrete next actionsPerformanceWorkflowMiniArtifact: compact artifact preview for workflow state
When To Use Performance Components
Use Performance components when the page needs to show at least one operational answer:
- What workflow or system has been mapped?
- What can run, what needs review, and what is blocked?
- Which policy, contract, receipt, or validation gate proves the claim?
- What should the buyer, operator, reviewer, system, or agent do next?
Do not use Performance components as generic light-themed decoration. If the surface does not carry maps, trust boundaries, approval states, receipts, validation gates, or handoff evidence, use the standard Canon components instead.
Example
<script lang="ts">
import { PerformanceDecisionPanel, PerformancePageSection, PerformanceReceiptGrid } from '@create-something/canon';
</script>
<PerformancePageSection
variant="hero"
titleLevel="h1"
eyebrow="Governed workflow"
title="Map the action before the agent runs."
description="Name the object, approval rule, stop condition, and receipt before execution."
/>
<PerformanceDecisionPanel
title="Show whether to run, review, or stop."
items={[
{
label: 'Review',
summary: 'Approval needed',
title: 'The write path changes customer data.',
detail: 'The policy requires an operator review before the tool can run.',
tone: 'review',
evidence: ['Write target is named', 'Policy rule is attached'],
receipts: ['workflow-map', 'approval-log']
}
]}
/>
<PerformanceReceiptGrid
receipts={[
{
title: 'Workflow map',
status: 'Ready',
description: 'Objects, tools, approval rules, and stop states are documented.'
}
]}
/>
Property Usage Notes
On CREATE SOMETHING properties, use PerformanceLogoStrip only when the relationship behind each
logo is true and labelable. Use PerformanceContentHighlights, PerformancePillarGrid, PerformanceUseCaseBand,
and PerformanceQuoteMetricPanel when a claim needs nearby proof or a concrete buyer/operator use case.
Use PerformanceSecurityPanel when the page needs to show policy, access, control, or compliance
evidence. Use PerformanceMetadataRail and PerformanceWorkflowMiniArtifact for dense operational state,
owners, receipts, and handoff metadata. Use PerformanceErrorPage when failure recovery must be plain
language, visible, and actionable. Use PerformanceActionFooter when the final action should remain
bounded to a named workflow, review, handoff, or governed surface.
Copy Rules
- Use nouns from the workflow: object, tool, record, tenant, bundle, policy, receipt.
- Use verbs from the work: map, review, approve, block, run, validate, hand off.
- Put proof beside the claim.
- Keep headings plain and short.
- Use mono labels for short state, receipt, or identifier text.
Related
The /canon/components/clear route and component.clear-* registry IDs remain
compatibility identifiers. New code imports Performance* names.