Basic usage
Props
Checkbox
boolean | 'indeterminate'
The controlled checked state. Can be true, false, or ‘indeterminate’.
boolean
The default checked state for uncontrolled usage.
(checked: boolean | 'indeterminate') => void
Callback fired when the checked state changes.
boolean
Whether the checkbox is disabled.
boolean
Whether the checkbox is required.
string
The name of the checkbox input for form submission.
string
The value of the checkbox input for form submission.
string
Additional CSS classes to apply to the checkbox.
Checkbox.Group
string[]
The controlled array of checked values.
string[]
The default array of checked values for uncontrolled usage.
(value: string[]) => void
Callback fired when the checked values change.
boolean
Whether all checkboxes in the group are disabled.
string
Additional CSS classes to apply to the group container.
Single checkbox
Checkbox group
Indeterminate state
Disabled state
With form integration
Required checkbox
Select all pattern
Accessibility
- Built on Base UI Checkbox primitive with full accessibility support.
- Proper ARIA attributes are automatically applied.
- Supports keyboard navigation with Space to toggle.
- Indeterminate state is properly communicated to screen readers.
- Works seamlessly within forms with proper name/value attributes.
- Label association ensures the entire label is clickable.