Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AD bye-bye 🚫📺

A lightweight, powerful Safari App Extension for macOS that automatically skips YouTube ads. Built natively for macOS to ensure the best performance and minimal battery drain.

✨ Features

  • Auto-Click "Skip Ad": Instantly detects and clicks all variations of the YouTube "Skip Ad" button.
  • The Fast-Forward Hack: Defeats "unskippable" ads by instantly muting them and fast-forwarding to the last second at 16x speed.
  • Ad Banner Removal: Automatically closes pop-up overlay banners at the bottom of videos.
  • Stats Tracker: Keeps a running tally of how many ads you've skipped (with a satisfying reset animation).
  • Toggle Switch: Easily enable or disable the extension right from the Safari toolbar.
  • Native macOS Performance: Built as a Safari Web Extension bundled within a native macOS app, making it incredibly lightweight compared to traditional Chrome extensions ported to Mac.

🚀 Installation

Option 1: Download the App (Recommended)

  1. Go to the Releases page and download the latest AD_bye-bye.dmg file.
  2. Open the .dmg file and drag AD bye-bye.app into your Applications folder.
  3. Launch AD bye-bye from your Applications folder (or Launchpad).
  4. Open Safari.
  5. Go to Safari > Settings (or Preferences) > Extensions.
  6. Find AD bye-bye in the left sidebar and check the box to enable it.
  7. Important: Click "Always Allow on Every Website" in the permissions pane on the right.

Note: Since this app is not signed with a paid Apple Developer account, you may need to right-click (or Control-click) the app in your Applications folder and select "Open" the very first time you run it to bypass macOS Gatekeeper.

Option 2: Build from Source

  1. Clone this repository.
  2. Open AD bye-bye.xcodeproj in Xcode.
  3. Select the AD bye-bye scheme and your Mac as the destination.
  4. Press Cmd + R to build and run.
  5. Follow steps 4-7 from Option 1 to enable it in Safari. (Note: You will need to enable "Allow Unsigned Extensions" in Safari's Develop menu if building locally without a provisioning profile).

🛠 How it Works

Unlike extensions that try to aggressively block network requests (which YouTube constantly tries to fight and often results in playback errors), AD bye-bye uses a DOM-level approach:

  • It uses a MutationObserver to watch for ad elements appearing on the page.
  • If a skip button is found, it clicks it.
  • If a video ad is playing (especially unskippable ones), it cranks the playbackRate to 16.0 and jumps the currentTime to the end, instantly finishing the ad without breaking the YouTube player state.

👨‍💻 Development

The core logic for ad skipping is located in: AD bye-bye Extension/Resources/content.js

The popup UI and state management are handled in: AD bye-bye Extension/Resources/popup.html AD bye-bye Extension/Resources/popup.js AD bye-bye Extension/Resources/background.js

📄 License

MIT License. Feel free to fork, modify, and improve!

About

A Safari extension to skip YouTube ads

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages