https://framer.com/m/RadioCard-KZf1.js

Io / UI Basics / RadioCards

RadioCards

RadioCards is a single choice where each option deserves more than a line — a title, a supporting line, its own hit area. The options below are ChartX2’s real data-source modes, described by a minimal schema.

Interactivesingle choicecard optionsschema-driven

Examples

Live specimens for every control the component exposes.

Default

Three cards from a minimal schema, the first one selected.

Columns

columns decides how many cards sit on a row. One column turns the group into a list of wide rows.

columns 3

columns 1

Density

itemPadding and gap set how much room each card takes; itemRadius rounds them.

itemPadding 10 · gap 8 · itemRadius 4

itemPadding 22 · gap 16 · itemRadius 14

Type and alignment

titleSize and subtitleSize pick theme steps; textAlign moves the pair inside each card.

textAlign left · Callout / Tiny

textAlign center · Body / Detail

Props

The controls exposed on the instance panel.

PropTypeBehaviour
aISchemastringJSON defining the options: a value and a title each, optionally a subtitle.
defaultValuestringWhich option is selected on first render.
columnsnumberHow many cards sit on a row.
gapnumberSpace between cards.
itemPaddingnumberInner padding of each card.
itemRadiusnumberCorner radius of each card.
selectedColorcolorAccent used to mark the chosen card.
titleSizeenumTheme type step for the title.
weightenumTitle font weight.
colorcolorTitle colour.
subtitleSizeenumTheme type step for the supporting line.
weight1enumSubtitle font weight.
color1colorSubtitle colour.
textAlignenumleft · center · right inside each card.
optionsarrayOptional custom renderers, matched to schema items by index — as many as there are items. They replace the title/subtitle visual only; value and disabled still come from the schema.
PropTypeBehaviour
aISchemastringJSON defining the options: a value and a title each, optionally a subtitle.
defaultValuestringWhich option is selected on first render.
columnsnumberHow many cards sit on a row.
gapnumberSpace between cards.
itemPaddingnumberInner padding of each card.
itemRadiusnumberCorner radius of each card.
selectedColorcolorAccent used to mark the chosen card.
titleSizeenumTheme type step for the title.
weightenumTitle font weight.
colorcolorTitle colour.
subtitleSizeenumTheme type step for the supporting line.
weight1enumSubtitle font weight.
color1colorSubtitle colour.
textAlignenumleft · center · right inside each card.
optionsarrayOptional custom renderers, matched to schema items by index — as many as there are items. They replace the title/subtitle visual only; value and disabled still come from the schema.

Usage

Guidance carried over from the component definition.

Reach for RadioCards

Each option needs a title and a supporting line, not just a label.

The options should be a comfortable target to click.

The choice is still one from several.

The set is short enough to show all at once.

Reach for something else

More than one option can be picked.

A plain list of dots is enough — use RadioGroup.

The list is long and belongs in a dropdown — use SelectX.

Io — UI Basics

Every group above is a live RadioCards instance over ChartX2’s real data-source modes. Colour, type and radius resolve from the project theme tokens.

io

An experiment in what a design system becomes when AI can consume it.

© 2026 io

Contact me

Create a free website with Framer, the website builder loved by startups, designers and agencies.