Prodular UI

Checkbox

An on or off choice that is saved with the rest of a form, with an indeterminate state for select all.

npx prodular-ui add checkbox

With labels

Group with select all

The parent checkbox turns indeterminate when only some are checked.

API key permissions

List projects, issues and comments.

Create and update issues on your behalf.

Invite, remove and change roles.

Anatomy

<Field orientation="horizontal">  <Checkbox defaultChecked />  <FieldLabel>Email me when a deal closes</FieldLabel></Field>

Guidance

Use it when

  • Choices that are saved when the form is submitted.
  • Several independent options from a list, such as permissions.

Avoid

  • Settings that apply the moment they change. Use Switch.
  • One choice from several. Use RadioGroup.

Rules for AI agents

Published in llms-full.txt, the registry and the MCP server, so coding agents follow them when they build with this component.

  • Put Checkbox and its FieldLabel inside Field orientation="horizontal", checkbox first. The label is linked automatically.
  • Use indeterminate (not checked) on a select-all checkbox when only some children are checked.
  • Write the label as the positive statement (Email me when a deal closes), never a negation.

API

Checkbox

PropTypeDefaultDescription
checked / defaultCheckedbooleanControlled or initial state.
indeterminatebooleanfalseShows a dash. Use for partial selection.
onCheckedChange(checked: boolean) => voidCalled when toggled.
disabledbooleanBlocks interaction and dims the control.

Installation

The Prodular UI CLI adds the source to components/ui with everything it depends on. In a project that already uses shadcn/ui, the shadcn CLI installs it from the Prodular registry too. See Installation for the first setup.

npx prodular-ui add checkbox# or, with the registry in components.jsonnpx shadcn@latest add @prodular/checkbox