# Range
A multi-thumb range input for selecting a span of numeric values between a minimum and maximum. It supports tick marks, value labels, and configurable stepping.
```tsx demo
import { Range } from "@tenstorrent/vesper/range";
export default function RangeDemo() {
return (
);
}
```
## Options
| Prop | Type | Description | Default |
| ----------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------ | ------------ |
| `thumbAriaLabels` | `string[]` | Accessible `aria-label` attributes for each thumb, in the same order as the values. Required. | — |
| `values` | `number[]` | The values of each thumb (controlled mode). The number of thumbs matches the length of this array. | — |
| `defaultValues` | `number[]` | The initial thumb values (uncontrolled mode). | `[min, max]` |
| `onValuesChange` | `(values: number[]) => void` | Callback fired as thumb values change during interaction. Receives the full array of current values. | — |
| `onValuesCommit` | `(values: number[]) => void` | Callback fired when a thumb interaction is completed, eg. on pointer up. Receives the final array of values. | — |
| `min` | `number` | The minimum allowed value. | `0` |
| `max` | `number` | The maximum allowed value. | `100` |
| `step` | `number` | The stepping interval between selectable values. | `1` |
| `minStepsBetweenThumbs` | `number` | The minimum number of steps required between thumbs, preventing them from overlapping. | `1` |
| `showTicks` | `boolean` | When `true`, renders tick marks along the track at each step interval. | `false` |
| `showValueLabels` | `boolean` | When `true`, displays a value label above each thumb. | `false` |
| `valueLabels` | `string[]` | Custom display labels for each thumb. When unset, each label falls back to that thumb's current value. | — |
| `disabled` | `boolean` | When `true`, prevents interaction. | `false` |
| `name` | `string` | The form field name submitted with form data. Every thumb submits its value under this name. | — |
| `form` | `string` | Associates the range with a `