Semantics
A labelled group with real buttons and optional separators or text.
Forms and selection · stable · MIT
Related native buttons joined by quiet shared material.
Install editable source
Behavior contract
A labelled group with real buttons and optional separators or text.
Tab reaches each enabled button.
Light and dark themes, logical RTL layout, reduced motion, responsive content, and forwarded public refs.
Source-derived reference
These public React parts are read directly from the canonical source during the documentation build.
GummyButtonGroupGummyButtonGroupSeparatorGummyButtonGroupTextGummyButtonGroupPropsComposes React.HTMLAttributes<HTMLDivElement> & { label: string; orientation?: "horizontal" | "vertical"; attached?: boolean; }
GummyButtonGroupTextPropsComposes React.HTMLAttributes<HTMLSpanElement>
Troubleshooting
Implementation decisions
Use a button group when actions are closely related and benefit from shared placement; unrelated primary decisions should remain separate. Labels must describe each result without depending on icon recognition or position. Decide how focus and wrapping behave at small widths, and keep destructive actions visually and semantically distinct. Test loading, disabled, permission-denied, and partial-success states so grouped controls do not imply an action completed.
Live product source
The Component Lab exercises real source across default, focus, disabled, responsive, dark, reduced-motion, and RTL contexts.
Open the live Component LabInteractive inspection
Load the real component preview when you are ready to interact with its responsive, theme, and direction controls.
Editable source
The registry payload stays off the initial page request.