Docs

interact

Creates an interactive widget that allows users to adjust parameters and see live results.

Syntax

interact(args, callback)

Parameters

Return value

An Interactive object that displays the controls and live-updates the result.

Examples

// Simple slider and picker
let widget = interact({
  amplitude: [0, 10, 0.1],
  waveform: ["sine", "cosine", "square"]
}, ({amplitude, waveform}) => {
  return `${waveform} wave with amplitude ${amplitude}`
})
widget
// Multiple sliders for color mixing
interact({
  red: [0, 255, 1],
  green: [0, 255, 1],
  blue: [0, 255, 1]
}, ({red, green, blue}) => {
  return new Color("srgb", [red/255, green/255, blue/255])
})
// Array-style parameters (function receives position arguments)
interact([
  [1, 10],      // First parameter: slider 1-10
  ["A", "B", "C"]  // Second parameter: picker
], (num, letter) => {
  return `${letter}${num}`
})

Control Types

Text Input

Slider

Picker/Dropdown

Notes

The callback function is called whenever any parameter changes. Results are automatically displayed below the controls.