> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sirius.menu/llms.txt
> Use this file to discover all available pages before exploring further.

# Slider

> Pick a number in a range by dragging.

A slider picks a number between a minimum and a maximum. The callback fires as it moves.

<Frame>
  <img src="https://mintcdn.com/sirius-b451bfde/f6FV7zSG5WdJNsXv/images/gen2/window.png?fit=max&auto=format&n=f6FV7zSG5WdJNsXv&q=85&s=0d854c97a34521ebb3314eef4dd96d25" alt="A slider set within its range" width="705" height="730" data-path="images/gen2/window.png" />
</Frame>

```lua theme={null}
tab:CreateSlider({
    name = "Field of view",
    range = { 70, 120 },
    increment = 1,
    value = 90,
    suffix = "°",
    callback = function(value)
        workspace.CurrentCamera.FieldOfView = value
    end,
})
```

## Properties

<ResponseField name="name" type="string">
  The label.
</ResponseField>

<ResponseField name="description" type="string">
  Hint text under the label. Optional.
</ResponseField>

<ResponseField name="icon" type="string | number">
  An icon shown beside the label. Optional.
</ResponseField>

<ResponseField name="range" type="{ number }">
  The bounds, as `{ min, max }`.
</ResponseField>

<ResponseField name="increment" type="number">
  The step the slider snaps to.
</ResponseField>

<ResponseField name="value" type="number" default="min">
  The initial value.
</ResponseField>

<ResponseField name="suffix" type="string">
  A unit shown after the number.
</ResponseField>

<ResponseField name="minimal" type="boolean" default="false">
  Show the track only, with no label. For dense rows.
</ResponseField>

<ResponseField name="flag" type="string" default="name">
  The save key. Optional.
</ResponseField>

<ResponseField name="forgetState" type="boolean" default="false">
  Skip saving.
</ResponseField>

<ResponseField name="callback" type="function">
  Runs with the new value as the slider moves.
</ResponseField>

## Handle

<ResponseField name=".value" type="number">
  The current value.
</ResponseField>

<ResponseField name="Set(value, skipCallback?)">
  Set the value. Pass `true` as the second argument to skip the callback.
</ResponseField>
