Skip to content
Pixelbits
Docs / Slider
Forms

Slider

A single-value slider. A native <input type="range">, styled, so keyboard (arrows, Page Up/Down, Home/End), touch, forms and screen readers work out of the box. Give it a name with Field, aria-label or aria-labelledby.

Installation

npm: import
import { Slider } from "pixelbits/slider";
shadcn: copy the source
npx shadcn add https://pixelbits.ali-moradi-develop.com/r/slider.json

API

<Slider>

A single-value slider. A native <input type="range">, styled, so keyboard (arrows, Page Up/Down, Home/End), touch, forms and screen readers work out of the box. Give it a name with Field, aria-label or aria-labelledby.

Example
<Field label="Pixel size">
  <Slider min={4} max={16} defaultValue={9} onValueChange={setSize} />
</Field>
PropTypeDefaultDescription
valuenumber—

The current value (controlled).

defaultValuenumbermin

The value at first (uncontrolled).

onValueChange(value: number) => void—

Called with the new value while the user drags or uses the keys.

minnumber0

Lowest value.

maxnumber100

Highest value.

stepnumber1

Distance between values; arrow keys move by one step.

ticksbooleanfalse

Draw a small tick for every step (keep the number of steps low).

Also accepts every prop of Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "value" | "defaultValue" | "min" | "max" | "step">.