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

# Section

> A section inside your tab where you add controls.

Created with [Tab:AddSection](/ui/classes/tab#addsection). Use the `Add*` methods here to add toggles, sliders, color pickers, and the rest. [Submenu](/ui/classes/submenu) and [Options](/ui/classes/options) have the same methods.

Pass `nil` for `key` if you don't want the control's value saved between sessions. [Button](/ui/classes/button) is unsaved by default.

***

## AddToggle

```luau theme={null}
section:AddToggle(key: string?, label: string, default: boolean?): ToggleHandle
```

<ParamField path="key" type="string?">
  Save name. Stored as `luau.{api.name}.{key}`.
</ParamField>

<ParamField path="label" type="string" required>
  Row label.
</ParamField>

<ParamField path="default" type="boolean" default="false">
  Starting value.
</ParamField>

<ResponseField name="returns" type="ToggleHandle">
  See [Toggle](/ui/classes/toggle).
</ResponseField>

***

## AddSlider

```luau theme={null}
section:AddSlider(
    key: string?,
    label: string,
    default: number,
    min: number,
    max: number,
    step: number,
    prefix: string?,
    suffix: string?
): SliderHandle
```

<ResponseField name="returns" type="SliderHandle">
  See [Slider](/ui/classes/slider).
</ResponseField>

***

## AddDropdown

```luau theme={null}
section:AddDropdown(key: string?, label: string, options: { string }, default: string | { string }?): DropdownHandle
```

<ResponseField name="returns" type="DropdownHandle">
  See [Dropdown](/ui/classes/dropdown).
</ResponseField>

***

## AddColorpicker

```luau theme={null}
section:AddColorpicker(key: string?, label: string, default: Color3 | ColorSequence?, transparency: number?): ColorpickerHandle
```

<ParamField path="transparency" type="number">
  Pass a value to enable the transparency slider (`0`–`1`).
</ParamField>

<ResponseField name="returns" type="ColorpickerHandle">
  See [Colorpicker](/ui/classes/colorpicker).
</ResponseField>

***

## AddKey

```luau theme={null}
section:AddKey(key: string?, label: string, default: Enum.KeyCode | Enum.UserInputType?, mode: KeyMode?): KeyHandle
```

<ResponseField name="returns" type="KeyHandle">
  See [Key](/ui/classes/key).
</ResponseField>

***

## AddList

```luau theme={null}
section:AddList(key: string?, label: string, items: { string | ListItem }?, default: string?): ListHandle
```

<ResponseField name="returns" type="ListHandle">
  See [List](/ui/classes/list).
</ResponseField>

***

## AddCurveEditor

```luau theme={null}
section:AddCurveEditor(key: string?, label: string, min: number, max: number, default: { CurvePoint }?): CurveEditorHandle
```

<ResponseField name="returns" type="CurveEditorHandle">
  See [CurveEditor](/ui/classes/curve-editor).
</ResponseField>

***

## AddButton

```luau theme={null}
section:AddButton(label: string, icon: string?): ButtonHandle
```

A clickable button, no saved value. See [Button](/ui/classes/button).

***

## AddSubmenu

```luau theme={null}
section:AddSubmenu(key: string?, label: string?): SubmenuHandle
```

A nested popout holding more controls. See [Submenu](/ui/classes/submenu).

***

## AddOptions

```luau theme={null}
section:AddOptions(key: string?, label: string?): OptionsHandle
```

A small inline group of controls. See [Options](/ui/classes/options).
