Ballmac UI home

Number Input

A bounded numeric field with native spinbutton semantics, step buttons, and controlled or uncontrolled state.

Invite seats

Choose how many teammates can join.

Installation

$ pnpm dlx shadcn@latest add @ballmac/number-input

Usage

import { NumberInput } from "@/components/ballmac/number-input"

The full example is in the Code tab above.

Examples

States and variants

API reference

PropTypeDefault
value

Controlled numeric value. Null renders an empty field.

number | null—
defaultValue

Initial value when uncontrolled.

number | null0
onValueChange

Called when the number changes.

(value: number | null) => void—
min

Lowest allowed value.

number—
max

Highest allowed value.

number—
step

Increment used by buttons and arrow keys.

number1
label

Accessible name for the input.

string—
name

Native form field name.

string—
disabled

Disable input and buttons.

booleanfalse

Also accepts the standard attributes of its root element.

Accessibility

KeyAction
Arrow Up / DownChanges the native numeric value
Tab / EnterOperates the step buttons

Use with AI

A bounded numeric field with native spinbutton semantics, step buttons, and controlled or uncontrolled state. With the shadcn MCP server set up (guide), ask your agent:

Add the Ballmac UI Number Input (@ballmac/number-input) to this project with the shadcn MCP, then use it where it fits.

Use it for

  • Choose a quantity or bounded count
  • Adjust a value precisely using keys or buttons

Not for

  • Use a slider when approximate adjustment is sufficient

Registry JSON: https://ui.ballmac.com/r/number-input.json

Credits

Free to use in personal and commercial projects.