Overview
Selection elements let users choose from predefined options. Pick the right element based on how many options you have and whether users can select one or multiple items.| Element | Options | Selection | Best For |
|---|---|---|---|
select | 3+ | Single | Many options, dropdown UI |
radio | 2-5 | Single | Few options, visible comparison |
checkbox | 1+ | Single or multiple | Multiple selections or terms acceptance |
Select Dropdown
Dropdown menu for choosing one option from a list. Best when you have many options (3+).Properties
| Property | Type | Description |
|---|---|---|
id | string | Unique identifier (becomes prop name) |
inputType | 'select' | Must be 'select' |
title | string | Field title |
description | string | Help text |
label | string | Input label |
defaultValue | string | number | Initial selected value |
options | array | Array of { label, value } objects |
validation | object | Validation rules |
Options Format
Validation
| Rule | Type | Description |
|---|---|---|
required | boolean | A value must be selected |
Example
linkapp.config.ts
Usage in Layout
app/expanded.tsx
Common Patterns
Theme selector:Radio Buttons
Radio button group for choosing one option. Best for 2-5 options where users benefit from seeing all choices at once.Properties
| Property | Type | Description |
|---|---|---|
id | string | Unique identifier |
inputType | 'radio' | Must be 'radio' |
title | string | Field title |
description | string | Help text |
options | array | Array of { label, value } objects |
defaultValue | string | Initial selected value |
validation | object | Validation rules |
Validation
| Rule | Type | Description |
|---|---|---|
required | boolean | A value must be selected |
Example
linkapp.config.ts
Usage in Layout
app/expanded.tsx
Common Patterns
Layout choice:Radio buttons show all options at once, making them perfect for choices users
need to compare visually. Use
select if you have more than 5 options.Checkbox
Checkbox input for single acceptance (like terms) or multiple selections.Properties
| Property | Type | Description |
|---|---|---|
id | string | Unique identifier |
inputType | 'checkbox' | Must be 'checkbox' |
title | string | Field title |
description | string | Help text |
label | string | Label for checkbox/group |
options | array | Array of { label, value } objects |
defaultValue | string | string[] | Initial selected value(s) |
validation | object | Validation rules |
Validation
| Rule | Type | Description |
|---|---|---|
required | boolean | At least one must be checked |
- Single checkbox: Provide 1 option (returns array with 1 item or empty array) - Multiple checkboxes: Provide 2+ options (returns array of selected values)
Example: Single Checkbox
For terms acceptance or single on/off choice:linkapp.config.ts
app/expanded.tsx
Example: Multiple Checkboxes
For selecting multiple options:linkapp.config.ts
app/expanded.tsx
Common Patterns
Terms acceptance:Comparison
Choose the right selection element:| Scenario | Use |
|---|---|
| 10+ options, select one | select dropdown |
| 3-5 options, select one, visual comparison helpful | radio buttons |
| 2 options, select one | radio buttons or switch |
| Select multiple from a list | checkbox (multiple) |
| Accept terms/agreement | checkbox (single) |
Complete Example
Here’s a product display configurator using all selection types:linkapp.config.ts
Type Safety
Define exact types for your selections:Next Steps
Text Inputs
Text, textarea, URL, and number inputs
Toggles
Switch and link behavior elements
Advanced Elements
Arrays, integrations, and conditional display
Back to Reference
Return to settings reference overview