Skip to content
TrademarkTrademark
Docs
Form Controls

Checkbox

Updated: October 11, 2026
View on GitHub

The Checkbox component provides a selectable control that can be toggled between checked, unchecked, and indeterminate states. It's built on top of the InteractiveDetails component for consistent styling and behavior.

State

Use the checked prop with React state to create controlled checkboxes. onToggle receives the state the checkbox moves to, so the setter can be passed straight in.

Indeterminate

The checkbox can display an indeterminate state, useful for parent checkboxes that control a group of child checkboxes.

Disabled

Disable the checkbox to prevent user interaction.

Hover

Disable the hover pulse animation by setting hoverable to false.

API reference

Type
Default
checked
Whether it is ticked, controlled. Leave it out and the checkbox keeps its own state.
boolean—
defaultChecked
The starting state when `checked` is left out.
booleanfalse
indeterminate
The third state, for a parent whose children are partly ticked.
booleanfalse
onToggle
Called with the new state when it is flipped: true when it becomes ticked.
(checked: boolean) => void—
hoverable
Highlight the row on hover.
booleantrue
label
ReactNode—
description
ReactNode—
disabled
booleanfalse
className
string—
style
React.CSSProperties—
iconButtonProps
Props forwarded to the icon button beside the label.
IconButtonProps—
…and every React.InputHTMLAttributes propinherited—
Edit this page on GitHub