Radio Group

Single-select option group with optional hint text per option, disabled options, horizontal/vertical orientation, and two size variants.

import{ RadioGroup } from "@pepulux/ui"

Vertical (default) — with hints

Select plan

Selected: pro

Horizontal orientation

Side-by-side layout — best for 2–4 short labels.

Notification frequency

Sizes — sm / md

sm uses a 16px dot, md uses a 20px dot.

Small (sm)
Medium (md)

Disabled options

Individual options within the group can be disabled.

Notification channel

No label (fieldset without legend)

Omit the label prop when the context already makes the group purpose clear.

Props

PropTypeDefaultDescription
options*RadioOption[]Array of { value, label, hint?, disabled? }
valuestringControlled selected value
onChange(value: string) => voidCalled when selection changes
namestring"radio"HTML name attribute for the radio inputs
labelstringGroup legend text displayed above the options
orientation"vertical" | "horizontal""vertical"Layout direction
size"sm" | "md""md"Radio dot dimension — 16px (sm) or 20px (md)
classNamestringAdditional CSS classes on the fieldset wrapper