Workday Canvas

Shape

Shape tokens provide border radius values for UI elements. Use them to create consistent rounded corners across components, from sharp edges to fully rounded elements.

v4.0.2
Install
yarn add @workday/canvas-tokens-web

Usage Guidance

Shape tokens define border radius values for UI elements. Apply them to create consistent rounded corners across similar components.

Shape Tokens

Shape tokens are aliased to base size tokens to define border radius. Each token corresponds to a specific use case and component type.

View our shape tokens

Shape Tokens

TokenValueSize (px)Usage
shape.nonesize.00pxNo border radius
shape.smsize.504pxSmall border radius for compact components
shape.mdsize.1008pxMedium border radius for form components
shape.lgsize.15012pxLarge border radius for content editors
shape.xlsize.20016pxExtra large for smaller cards
shape.xxlsize.30024pxExtra extra large for cards
shape.xxxlsize.40032pxMaximum for large elevated containers
shape.fullsize.75 * 100999pxFull rounding for high-visibility components

None

Value: size.0

No border radius. Use for full-width and background containers, fixed navigation containers such as headers and side-panels.

Small

Value: size.50

Small border radius for compact components. Used for pills, status indicators, and checkboxes.

Medium

Value: size.100

Medium border radius for form components and notifications. Used for inputs, toasts, tooltips, and snackbars.

Large

Value: size.150

Large border radius for content editors. Used for rich text editors.

Extra Large

Value: size.200

Extra large border radius for smaller cards and containers. Used for compact card components and smaller content containers.

Extra Extra Large

Value: size.300

Extra extra large border radius for cards and list items. Used for card components and large content containers.

Extra Extra Extra Large

Value: size.400

Maximum border radius for large elevated containers. Used for dialogs, modals, bottom sheets, and other elevated parent containers with substantial content.

Full

Value: size.75 * 100

Full rounding for high-visibility components intended to draw attention. Used for buttons, badges, status indicators, essential inputs, and border containers (not cards).

Using our Shapes

Do
  • Apply the same border radius value to all corners of an element. This ensures the shape doesn’t get distorted.
  • Choose shape tokens based on component type and use case. Follow the recommended usage for each token size.
Don’t
  • Don’t combine different border radius values on the same element.
  • Don’t use different values for different corners unless specifically required.

Web Examples

Javascript / Typescript

// styles.ts import {system} from '@workday/canvas-tokens-web'; const styles = { borderRadius: `var(${system.shape.xxl})`, };

CSS

// styles.css @import '@workday/canvas-tokens-web/css/system/_variables.css'; .card { border-radius: var(--cnvs-sys-shape-xxl); }
shape tokens
SampleCSS VariableJS VariableValueCalculated ValuePixel Value
--cnvs-sys-shape-zerosystem.shape.zero0rem0px
--cnvs-sys-shape-halfsystem.shape.half0rem0px
--cnvs-sys-shape-x1system.shape.x10rem0px
--cnvs-sys-shape-x1-halfsystem.shape.x1Half0rem0px
--cnvs-sys-shape-x2system.shape.x20rem0px
--cnvs-sys-shape-x4system.shape.x40rem0px
--cnvs-sys-shape-x6system.shape.x60rem0px
--cnvs-sys-shape-roundsystem.shape.round0rem0px
--cnvs-sys-shape-nonesystem.shape.none0rem0px
--cnvs-sys-shape-smsystem.shape.sm0rem0px
--cnvs-sys-shape-mdsystem.shape.md0rem0px
--cnvs-sys-shape-lgsystem.shape.lg0rem0px
--cnvs-sys-shape-xlsystem.shape.xl0rem0px
--cnvs-sys-shape-xxlsystem.shape.xxl0rem0px
--cnvs-sys-shape-xxxlsystem.shape.xxxl0rem0px
--cnvs-sys-shape-fullsystem.shape.full0rem0px

iOS Examples

Coming soon!

Android Examples

Coming soon!

Can't Find What You Need?

Check out our FAQ section which may help you find the information you're looking for. For further information, contact the #ask-canvas-design or #ask-canvas-kitchannels on Slack.

On this Page: