Skip to content

booleanValues

Prefer shorthand boolean attributes over explicit {true} values in JSX.

✅ This rule is included in the jsx stylistic presets.

When a boolean JSX attribute is set to true, the value can be omitted entirely. The shorthand syntax is more concise and idiomatic in JSX, reducing visual noise and improving readability.

<
JSX.IntrinsicElements.button: DetailedHTMLProps<ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>
button
ButtonHTMLAttributes<HTMLButtonElement>.disabled?: boolean | undefined
disabled
={true}>Click me</
JSX.IntrinsicElements.button: DetailedHTMLProps<ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>
button
>
<
JSX.IntrinsicElements.input: DetailedHTMLProps<InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>
input
InputHTMLAttributes<HTMLInputElement>.type?: HTMLInputTypeAttribute | undefined
type
="text"
InputHTMLAttributes<HTMLInputElement>.required?: boolean | undefined
required
={true} />
<
const Component: any
Component
isActive: boolean
isActive
={true} />;

This rule is not configurable.

If your project has an established style guide that prefers explicit boolean values for consistency or clarity, you may want to disable this rule. However, the shorthand syntax is widely accepted as idiomatic JSX.

Made with ❤️‍🔥 around the world by the Flint team and contributors.