Skip to main content

Overview

Administrator
Editor
Viewer
Enterprise (disabled)
Monthly
Yearly
Radio Group is used when users must choose exactly one option from a list. Selecting one radio deselects all others. Unlike a Select, all options are visible simultaneously.

Installation


Usage


Variants

Vertical (Default)

Select role
Administrator
Editor
Viewer

Horizontal

Monthly
Yearly

With Descriptions

All notifications
Receive all emails and push notifications
Important only
Only critical alerts and mentions
None
No notifications

API Reference

RadioGroup

string
Controlled selected value.
(value: string) => void
Callback fired when the selected value changes.
string
Uncontrolled default selected value.
string
default:"vertical"
Layout direction. Values: vertical · horizontal
string
Group label displayed above all options.
boolean
default:"false"
Disables all items in the group.

RadioGroupItem

string
The option value (required).
string
Option label text.
string
Supporting description shown below the label.
boolean
default:"false"
Disables this specific option.

Accessibility

  • Radio Group uses role="radiogroup" with individual role="radio" elements
  • Arrow keys move between options within the group
  • Only one item is in the tab order at a time (roving tabindex pattern)
  • Disabled items use aria-disabled="true" and are skipped by keyboard navigation
  • Group label is associated via aria-labelledby
  • description is linked via aria-describedby

Do’s & Don’ts

Do

  • Use Radio Group for mutually exclusive choices (2–6 options)
  • Always include a group label to describe what is being chosen
  • Use horizontal layout for binary choices (Monthly/Yearly)
  • Add descriptions to clarify the implications of each option

Don't

  • Don’t use Radio Group for more than 6 options — use Select instead
  • Don’t use Radio Group for multi-select — use Checkbox Group instead
  • Don’t pre-select an option unless there is a clear default
  • Don’t disable all options simultaneously — show an empty state instead