YTM Enhancer supercharges YouTube Music to make it the best browser-based media player.
It upgrades YouTube Music in your browser with smarter controls, automation, and visual enhancements, without forcing you into a replacement app or wrapper.
If you love the ubiquity of YouTube Music's service but want a more fully-featured listening experience, this extension is for you.
- Adds missing quality-of-life features from other media players
- Improves daily listening flow with fewer clicks and better controls
- Keep YouTube Music in your browser - without compromises
- Manage multiple YouTube Music tabs, effortlessly switching and controlling playback
- Private by design: no analytics, no tracking, and no external backend services.
- Supports all major browsers: Chrome, Edge, and Firefox
YTM Enhancer currently installs from source (manual load). Browser web store listings are coming soon.
- Node.js 20+
- pnpm 10+
Show Chrome / Chromium installation steps
- Clone this repository.
- Install dependencies:
pnpm install - Build Chrome output:
pnpm run build:chrome - Open
chrome://extensions. - Enable Developer mode.
- Click "Load unpacked".
- Select
dist/chrome.
Show Edge installation steps
- Clone this repository.
- Install dependencies:
pnpm install - Build Edge output:
pnpm run build:edge - Open
edge://extensions. - Enable Developer mode.
- Click "Load unpacked".
- Select
dist/edge.
Show Firefox installation steps
- Clone this repository.
- Install dependencies:
pnpm install - Build Firefox output:
pnpm run build:firefox - Open
about:debugging#/runtime/this-firefox. - Click "Load Temporary Add-on".
- Select any file inside
dist/firefox(typicallymanifest.json).
YTM Enhancer is private by design. It has no analytics, no tracking, and no external backend services.
| Permission | Why It Is Needed |
|---|---|
activeTab |
Lets the popup and hotkeys interact with your currently active YouTube Music tab when you trigger extension actions. |
alarms |
Powers time-based automation, including Sleep Timer and background scheduling logic. |
notifications |
Shows native desktop notifications for track changes and related playback events. |
scripting |
Injects and runs extension scripts on YouTube Music to provide feature behavior in-page. |
storage |
Saves your module settings locally in the browser so preferences persist. |
https://music.youtube.com/* |
Limits extension functionality to YouTube Music pages where features are intended to run. |
https://lh3.googleusercontent.com/* |
Loads album art assets used for now-playing and notification UI. |
See PRIVACY.md for full details on data handling, permissions, and privacy guarantees.
YTM Enhancer is actively developed and already includes a broad module set.
The architecture is designed so new features can be added as modules without rewriting existing modules.
Contributions are encouraged.
If you want to help:
- Open an issue for bugs, UX problems, or feature requests.
- Open a PR for fixes and improvements.
See CONTRIBUTING.md for details on the module contribution workflow.
- Chrome watch build:
pnpm run dev:chrome - Edge watch build:
pnpm run dev:edge - Firefox watch build:
pnpm run dev:firefox
MIT. See LICENSE.