Cable Status Controller

Permissions Stimulus Controller

Wakeword Stimulus Controller

Will trigger browser permissions prompt if needed

Visualizer Stimulus Controller

Supports multiple sources: speaker targets + streams via addSpeakerStream()

(uses speaker target)

LiveKit Agent Controller

Manages LiveKit room connections for voice agents. Preload creates Room + fetches token, Start connects to room with mic enabled.

Cat
Dog

Sound Controller

Plays audio feedback sounds in response to events. Uses Web Audio API with preloading for instant playback.

iOS Safari requires user gesture to enable audio

Breathing Circle (CSS Only)

Hover and click the circle to see wrapper effects. Use buttons to toggle state classes.

Current classes: breathing-circle

Icons

Using Lucide Icons via the lucide-rails gem: View All Icons

<%= lucide_icon "check", class: "w-5 h-5 text-green-600" %>

Dummy App

Receives outlet callbacks from other controllers for testing.