The Ultimate All-in-One YouTube Enhancement Extension
Transform your YouTube experience with the most comprehensive upgrade extension available. YouTube LevelUp combines eight essential improvements into a single, lightweight browser extension that makes YouTube work the way it should have from the beginning.
Shorts Blocker
- Removes Shorts tabs from navigation
- Hides Shorts shelves from feeds and search results
- Works across desktop, mobile, and YouTube Music
Playables Blocker
- Hides "Watch & Play" / Playables game shelves and game cards
- Removes Playables entries from the sidebar navigation
Members-Only Content Blocker
- Hides members-only videos from feeds and recommendations
- Detects both legacy and new YouTube badge layouts
- Matches member badges across all interface languages
- Removes clutter from channels you're not subscribed to
- Works on desktop and mobile YouTube
Dislike Counter Restoration
- Shows real dislike counts using Return YouTube Dislike API
- Integrates seamlessly with existing like/dislike buttons
- Submits your like/dislike votes to the API (registration puzzle solved locally)
- Caches counts per session
Smart Sponsor Skipping
- Automatically skips sponsor segments using SponsorBlock database
- Uses hashed video IDs for privacy protection
- Sub-second accuracy with community-submitted timings
- Draws segment markers on the progress bar (desktop and mobile player)
- Highlight segments jump to the highlight once per video
- Pauses skipping and markers while an ad is playing
Auto-Continue Watching
- Bypasses "Are you still watching?" popups automatically
- Only works when actively using the browser
- Ignores synthetic keep-alive events when measuring activity
Anti-Translate
- Restores original audio tracks on dubbed videos
- Shows original titles (watch page, feeds, search, recommendations) and descriptions
- Switches auto-generated captions to the manual track of the same language
- Removes "auto-synchronized" labels and badges in any language
- Works on desktop and mobile YouTube
Background Playback
- Keeps videos playing when tab is in background
- Prevents automatic pausing when switching tabs or windows
- Overrides page visibility detection and sends periodic keep-alive input
- Works on both YouTube and YouTube Music
Chrome/Edge/Brave:
- Download or clone this repository
- Rename
manifest-chrome.jsontomanifest.json(Manifest V3) - Go to chrome://extensions/
- Enable Developer mode
- Click "Load unpacked" and select the extension folder
Firefox:
- Download or clone this repository
- Go to about:debugging#/runtime/this-firefox
- Click "Load Temporary Add-on"
- Select manifest.json
Click the extension toolbar icon to open the settings popup:
- Feature toggles - Enable/disable each feature individually (dislikes, sponsor skip, shorts blocker, playables blocker, members blocker, auto continue, anti-translate, background playback)
- SponsorBlock categories - Choose which segment types to auto-skip: Sponsor, Self Promotion, Exclusive Access, Interaction Reminder, Highlight, Intermission/Intro, Endcards/Credits, Preview/Recap, Hook/Greetings, Tangents/Jokes, Non-Music Sections
- Changes apply live to open tabs
- Music options - Restrict non-music section skipping to music.youtube.com only
Automatically adapts to your browser's light/dark theme.
- No tracking or analytics
- Local storage only for caches
- Minimal API usage (Return YouTube Dislike, SponsorBlock and YouTube oEmbed only)
- No third-party fonts or assets
- Open source - all code is auditable
- Only accesses necessary YouTube domains
| File | World | Role |
|---|---|---|
settings.js |
extension | Defaults, merge and storage helpers shared by content script and popup |
content.js |
extension (isolated) | Shorts/Playables/members blocking, dislikes, SponsorBlock, title/description restore |
main-world.js |
page (world: MAIN) |
Background playback, audio/caption restore, "still watching" dismissal |
popup.html, popup.js |
popup | Settings UI |
- Shorts/Playables blockers are single injected stylesheets (
:has()selectors), no DOM scanning. Playables match/playableslinks and mini-game card elements. - Members blocker combines a CSS fast path with a keyword scan of badges.
- Page bridge - player APIs are only reachable in the page world.
main-world.jsreads them and publishes the original description viadata-ytlu-description;content.jswrites disabled features todata-ytlu-off. - DOM work is coalesced (one refresh per 250 ms) after mutations and on
yt-navigate-finish. - Manifests -
manifest.json(Firefox, MV2) andmanifest-chrome.json(MV3) share the same files.
Copyright 2025 TN3W
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.