Soft out-of-focus studio lights drifting and breathing behind a presenter, a seamless 10 second podcast background loop
This is the format it was composed for. Switch above to see it lay itself out for another: same animation, re-arranged for the frame.
Everything below can be changed without touching the animation. Hand the list to an agent, or edit the values at the bottom of the component file.
Brand palette id. The default 'dusk' is near-black with lavender, cyan and warm orange lights, the look of a dim podcast set. Any brand works: its ground becomes the room and its accent colours become the lights.
now: dusk
Your own colours as hex strings; empty uses the brand's accent colours. Up to four. Warm colours take most of the bright cluster in the upper third and lean left, cool ones lean right, the first colour also tints the room's fill light and the second its key lamp, and a soft tungsten white is always mixed in.
now: 0 items
How quickly the lights drift and breathe. Each step is a whole-number multiple (1, 2 or 3) of the same cycles, so the 10 second loop stays seamless at every setting. 'slow' is barely moving and right under dialogue; 'normal' is a gentle drift; 'fast' suits a short intro or a music bed.
now: normal
Film grain strength, 0 to 1. It stops the soft light falloffs from banding into stripes after YouTube or a social app compresses the video. 0.35 is invisible at normal viewing distance; raise it for a filmic, shot-on-camera look.
now: 0.35
Where your text or face will sit. 'center' dims and quiets the lights in the middle of the frame so a headline reads; 'left' does the same for the left half, for a title beside a presenter; 'none' keeps the whole set even. The area is calmed, never emptied.
now: center
Corner darkening, 0 to 1. The default pulls the eye inward and keeps the frame edge on the brand's ground. 0 gives an even field; 1 gives a moody, spot-lit set.
now: 0.55
How many lights are in the room. 1 is about forty discs across three depths; 0.5 is a sparse, minimal set; 1.5 is a busy one, like a bar or a stage. Lights are added in a fixed order, so every value is a composed frame and the existing lights never move.
now: 1
No Tailwind, no CSS, no asset files. Inline styles only.
A bokeh background loop for my podcast videos: soft out-of-focus lights behind me like a dim studio, some big and blurry, some small and sharper, warm and cool mixed, slowly drifting and breathing. Brightest near the top so my face and captions stay clear, but not a black hole underneath. Ten seconds, seamless, in my brand colours.