Configurable Widgets
Experimental Feature
Configurable widgets are experimental. Please report any issues you find.
Configurable widgets let users edit widget parameters in the native iOS Edit Widget sheet. Use them when a Dynamic Widget needs a few user-editable knobs, such as a label, unit, theme, or source.
It requires iOS 17+, because Voltra wires it through AppIntentConfiguration.
How it works
- Define a Dynamic Widget module with a default export.
- Add
entryandappIntent.parametersto the widget config inapp.json. - Read the selected values in your widget.
- Let the user edit the widget from the iOS widget sheet.
Each parameter has:
name: key that appears inenv.configurationtitle: label shown in the Edit Widget sheetdefault: code-defined starting value before the user changes anything
How to use it
Plugin config:
Using it in app
- Build and install the app on a real iPhone.
- Add the widget to Home Screen.
- Long-press it and tap Edit Widget.
- Change parameters.
- Read values from
env.configurationin your JSX.
If you need more than one value, add more entries to appIntent.parameters and read each key from env.configuration.
Notes
appIntentonly wires up for Dynamic Widgets.- Defaults come from code, not from the native sheet.
- There is no
exportfield in app.json for Dynamic Widgets. - Use a real device to verify the Edit Widget flow.
