A Chrome extension that adds a volume slider and mute button to KEXP.org's player bar. KEXP streams great music 24/7 but doesn't offer a volume control on their website — this fixes that.
- Volume slider — drag to adjust, click to jump, scroll wheel to nudge
- Mute toggle — click the speaker icon; unmuting restores your previous level
- Remembers your settings — volume and mute state persist across sessions
- Keyboard accessible — arrow keys, Home/End when the slider is focused
- Looks native — matches KEXP's dark theme and gold accent color
- Lightweight — no background scripts, no popups, no network requests
- Clone this repo or download the ZIP
- Open
chrome://extensionsin Chrome - Enable Developer mode (top right toggle)
- Click Load unpacked and select the project folder
- Go to kexp.org and enjoy
The extension injects a content script into KEXP.org pages that:
- Waits for KEXP's JW Player audio player to initialize
- Creates a volume slider + mute button and places it below the play/pause button
- Hooks into JW Player's API (
setVolume,setMute, event listeners) for real-time control - Saves your volume preference to
localStorageso it persists between visits
The entire extension is three files — manifest.json, content.js, and content.css — with zero dependencies.
| Action | Effect |
|---|---|
| Drag slider | Adjust volume 0–100% |
| Click slider track | Jump to that volume level |
| Click speaker icon | Toggle mute/unmute |
| Scroll wheel (over control) | Nudge volume +/- 5% |
| Arrow keys (when focused) | Nudge volume +/- 5% |
| Home / End (when focused) | Min / max volume |
MIT
