Checkbox
Lets a user toggle a single option on or off.
Show codeHide code
Installation
import { Checkbox } from "@makeplane/propel/components/checkbox";Usage
import { Checkbox } from "@makeplane/propel/components/checkbox";
import * as React from "react";
export default function BasicDemo() {
const [checked, setChecked] = React.useState(true);
return (
<Checkbox label="Send me product updates" checked={checked} onCheckedChange={setChecked} />
);
}Examples
States
The resting, checked, mixed (indeterminate), and disabled boxes.
Show codeHide code
With icon
Pass an icon to render a glyph between the box and the label.
Show codeHide code
Stretch
stretch sets the label row’s width: auto (the default) shrinks to the content, full spans the container — useful when the whole row is the hit target.
Show codeHide code
Invalid
The danger look is a state, not a prop: inside an invalid Field the unchecked box recolors its border red, while a checked box keeps the accent fill.
Show codeHide code
API Reference
Checkbox
The ready-made checkbox: grafts Base UI checkbox behavior onto the styled `Checkbox` box with its check and indeterminate indicators, and optionally wraps the row in a clickable `CheckboxLabel` with an icon slot.
CheckboxLabel
The clickable row chip that wraps a `Checkbox` box with an optional leading icon and the label text, matching the Figma "Checkbox with label" component. Associate it with the box via `htmlFor` so clicking anywhere in the row toggles the box. The row reads its disabled look off the wrapped `Checkbox` (which carries `data-disabled`) via `:has()`, so it takes no `disabled` prop. Pass the icon as a direct-child `aria-hidden` span (e.g. the shared `Icon`) so the disabled tint override applies.