Settings
Add typed per-presence settings with boolean, input, select, and slider controls.
What Settings Are
Settings let users customize how a presence behaves without editing code.
Supported Setting Types
Nowly supports boolean, input, select, and slider settings.
| Field | Type | Description | Default |
|---|---|---|---|
boolean | boolean | Toggle for enabled/disabled options. | - |
input | string | Free-form text value. | - |
select | string | One value selected from predefined options. | - |
slider | number | Numeric value with optional min, max, and step. | - |
Defining Settings
Use Presence.Settings to define typed settings:
const settings = Presence.Settings({
showButtons: {
type: "boolean",
default: true,
label: {
"en-US": "Show buttons"
}
}
})Reading Settings
Use getSetting at runtime:
const showButtons = await presence.getSetting<boolean>("showButtons")Localized Labels
Setting labels and descriptions use the same locale keys used in metadata.
Defaults
Choose safe defaults. A presence should work immediately after installation without requiring configuration.