PUDGE/UI v0.2.1 2025-07
  • + 5 new hardware compositions: Walkman Deck (Sony WM-D6C), Game Boy (Nintendo DMG-01), DJ Controller Deck (Pioneer DDJ), Synthesizer Panel (Roland SH-101 / Moog Minimoog)
  • + Changelog page at /changelog with full version history
  • + Animated NEW badge on recently added specs and compositions
  • + LCD-style version update banner with per-version dismiss
composition defaultmetal

Audio Mixer Strip

PAN
CH1
PAN
CH2
PAN
MASTER

Description

A vertical channel strip from a mixing console. Multiple strips are placed side by side to form a mixer bank. Each strip contains a pan knob, VU meter, channel fader, channel label, and solo/mute LED indicator.

Reference Devices

Mackie 1604-VLZ Pro, SSL Duality, Neve 5088, Yamaha 02R, Behringer X32 (channel strip section).

Layout

┌──────┐  ┌──────┐  ┌──────┐
│ (PAN)│  │ (PAN)│  │ (PAN)│    ← radial-knob (40x40px)
│      │  │      │  │      │
│ ██   │  │ ██   │  │ ██   │    ← vu-meter (2 bars per channel)
│ ██   │  │ ██   │  │ ██   │
│      │  │      │  │      │
│ ┃━┃  │  │ ┃━┃  │  │ ┃━┃  │    ← vertical-fader (100px track)
│ ┃━┃  │  │ ┃━┃  │  │ ┃━┃  │
│ ┃━┃  │  │ ┃━┃  │  │ ┃━┃  │
│      │  │      │  │      │
│ CH1  │  │ CH2  │  │ MST  │    ← channel label
│  ●   │  │  ●   │  │  ●   │    ← led-dot (status)
└──────┘  └──────┘  └──────┘

Assembly Rules

  1. Container: Use .panel with default material. display: flex; gap: 16px; align-items: flex-end; padding: 16px.

  2. Each channel strip: Vertical flex column (flex-direction: column; align-items: center; gap: 6px).

  3. Pan knob: .radial-knob at 40x40px (smaller than default). Indicator transform-origin adjusted for the smaller size (transform-origin: 50% 16px). Default material for regular channels, .variant-metal for master.

  4. Pan label: font-size: 7px; letter-spacing: 1px; color: var(--text-muted).

  5. VU meter: 2 bars per channel, 50px height, 2px gap, 6px bar width. Compact sizing.

  6. Channel fader: .fader-v-track at 100px height, 8px width. Thumb at 16x8px (smaller than default). Each channel at different fill heights for visual variety.

  7. Channel label: font-family: var(--font-display); font-size: 8px; color: var(--amber). Master channel in color: var(--red-alert).

  8. Status LED: .led-dot.green for regular channels, .led-dot.red for master.

Component Configuration

Component Channel Config Master Config
radial-knob 40x40px, default material 40x40px, .variant-metal
vu-meter 2 bars, 50px height 2 bars, 50px height, higher levels
vertical-fader 100px track, varied fills 100px track, high fill (80%)
channel label color: var(--amber) color: var(--red-alert)
led-dot .green .red

Constraints

  1. MUST render as a horizontal row of strips — vertical stacking breaks the mixer metaphor.
  2. MUST show at least 3 strips (two channels + master) to read as a mixer bank section.
  3. Master strip MUST be visually distinct from channel strips — different label color and LED state.

Interactivity

  1. Pan knobs: Drag vertically to rotate — indicator dot angle updates in real-time. Range −90° (left) to +90° (right). Center (0°) is 12 o'clock.
  2. Channel faders: Drag vertically to move thumb — fill and thumb position update in real-time. Fader position determines the channel level (0%–100%).
  3. VU meters: CSS animation pulses the bar heights to simulate live audio levels. Each strip has a slightly different animation timing for visual variety.
  4. Status LEDs: Click to toggle solo (green) / mute (off) state per channel. Master LED is not interactive.

Components Used

Hand it to your agent

This is a multi-component assembly spec — pass it to your coding agent along with the foundation specs to build the complete interface in any framework.

—
—

Compositions show how components assemble. Give the full spec to your agent.

Pudge