Skip to content

morozsm/glow-knobs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ› glow-knobs

Instrument panel controls for Svelte 5 β€” knobs with arc glow, LED indicator buttons, gradient bars, drag-to-adjust values. Zero dependencies.

Status: In Development β€” Components are being built inside icom-lan (a web-based radio transceiver control app) and will be extracted here when stable.

Components (planned)

ValueControl β€” One core, many renderers

Renderer Description Use case
HBar Horizontal bar with fill + gradient AF gain, RF gain, levels
Bipolar Centered Β± bar PBT, IF shift, RIT offset
Knob SVG rotary with arc glow ✨ Any rotary parameter
VBar Vertical bar Equalizer, level meters

All renderers share the same interaction model:

  • πŸ–± Drag to adjust (horizontal or vertical)
  • πŸ”„ Scroll wheel for fine control
  • ⌨️ Arrow keys when focused
  • ⇧ Shift = fine adjust (Γ·10)
  • πŸ”˜ Double-click = reset to default
  • πŸ“± Touch with pointer capture

Knob Features

  • Arc glow β€” filled sector glows proportionally to value
  • Gradient fill β€” multi-stop color gradients along the arc
  • Configurable glow β€” blur radius, spread, opacity, intensity scaling
  • Tick marks with optional labels
  • Sweep angle β€” 270Β° default, configurable

ControlButton β€” LED indicator styles

Style Visual
ring Border glow (default)
dot LED indicator dot (like hardware)
edge-bottom Bottom edge glow
edge-left Left edge glow
edge-sides Left + right edge glow
fill Background fill glow

6 color tokens: cyan, green, amber, red, orange, white β€” plus custom via CSS variable.

Also included

  • SegmentedButton β€” radio-group selector
  • TuningWheel β€” horizontal jog dial with momentum

Design goals

  • 🎨 Instrument-panel aesthetics β€” dark theme, glow effects, professional look
  • 🧩 Svelte 5 runes ($props, $derived, $effect)
  • πŸ“¦ Zero dependencies β€” pure Svelte + SVG + CSS
  • 🎯 Channel theming β€” CSS variables for multi-channel color coding
  • β™Ώ Accessible β€” ARIA slider attributes, keyboard navigation
  • πŸ“± Mobile-first β€” touch, haptics, pointer capture

Target audience

  • πŸ“» Ham radio / SDR control panels
  • 🎡 Audio / DAW β€” mixer controls, synth knobs
  • 🌑 IoT dashboards β€” sensor displays, actuator controls
  • πŸ”¬ Lab equipment β€” instrument panels
  • ✈️ Simulators β€” cockpit instruments

License

MIT Β© 2026 Sergey Morozik

About

πŸŽ› Instrument panel controls for Svelte 5 β€” knobs with arc glow, LED buttons, gradient bars, drag-to-adjust. For radio, audio, IoT, and lab UIs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors