Skip to content

BasilPadre/YouTube-Subs-Filters

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YouTube Subs Filters

A Chrome extension that adds watch-state filters to the YouTube Subscriptions page.

What It Does

On youtube.com/feed/subscriptions, the extension adds three compact filter buttons next to the Latest heading:

  • All
  • Started
  • Not started

The labels are localized through Chrome i18n. Current locales: English, Russian, Spanish, German, Japanese, French, Portuguese, Italian, Dutch, Polish, Simplified Chinese, and Traditional Chinese.

How It Works

The extension filters the video cards already loaded on the page:

  • Started: videos with visible progress from 1% to 95%
  • Not started: videos without progress and without a watched badge
  • watched videos are hidden in both filtered modes

Shorts are hidden while filtering because YouTube does not expose the same reliable progress state for them.

Install Locally

  1. Open chrome://extensions.
  2. Enable Developer mode.
  3. Click Load unpacked.
  4. Select this project folder.
  5. Reload https://www.youtube.com/feed/subscriptions.

After changing extension files, reload the extension on chrome://extensions and refresh the YouTube tab.

Files

  • manifest.json - Chrome extension manifest
  • content.js - YouTube DOM integration and filtering logic
  • styles.css - injected UI styles
  • _locales/ - localized labels and messages
  • icons/ - extension icons
  • store-assets/ - Chrome Web Store listing assets
  • tests/ - browser-based placement, click, scroll, contrast, and locale checks
  • PRIVACY.md - privacy policy for the Chrome Web Store listing

Privacy

The extension runs locally in the browser and does not collect, store, sell, or transmit user data. See PRIVACY.md.

Test

node tests/run-placement-check.mjs

The test starts a temporary Chrome profile, opens a local YouTube Subscriptions fixture, and verifies placement, click behavior, scrolling, contrast, and every locale in _locales.

Limitations

The extension does not use the YouTube API or read your watch history. It only inspects the current page DOM. If YouTube changes its video card markup, the selectors in content.js may need an update.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages