facebook-adblock / facebook_adblock

An open-source Ad Blocker for Facebook™
GNU General Public License v3.0
215 stars 42 forks source link
browser-extension chrome-extension facebook facebook-adblock firefox-addon javascript

facebook_adblock

An open-source Ad Blocker for Facebook™

This extension is 100% free and open source.

Installation

Chrome

https://chrome.google.com/webstore/detail/ad-blocker-for-facebook/kinpgphmiekapnpbmobneleaiemkefag

Chrome Web Store Chrome Web Store Chrome Web Store

Firefox

https://addons.mozilla.org/en-US/firefox/addon/fb_ad_block/ (Thanks to Chih-Hsuan Yen)

Mozilla Add-on Mozilla Add-on Mozilla Add-on

Enjoy!

We are not affiliated, associated, authorized, endorsed by, or in any way officially connected with Facebook.

Facebook is a registered trademark of the Facebook, Inc.

Building

  1. Run npm run release
  2. The compiled extension should be in dist/
  3. Load the unsigned extension into your browser

Debugging

All processed DOM elements are flagged with data-blocked attribute. Possible values are:

You can use dev tools console with CSS selectors like *[data-blocked] or *[data-blocked=sponsored].

For example add inline style properties to all existing hidden sponsored posts:

document.querySelectorAll("*[data-blocked=sponsored]").forEach((x) => {
  x.style.display="inherit";
  x.style.border="red 10px solid";
});

You can also inject css which applies to both existing and new processed elements:

document.head.insertAdjacentHTML("beforeend",
`<style>
  *[data-blocked] {
    display:inherit !important;
    border: red 10px solid;
  }
  *[data-blocked=allowedList] {
    border-color: green;
  }
  *[data-adblocked] {
    display:inherit !important;
    border: pink 10px solid;
  }
  *[data-adblock-monitored] {
    border: blue 10px solid;
  }
  *[data-adblock-observed] {
    border: aqua 10px solid;
  }
</style>`);

Publishing

  1. Tag a commit with a string with this format v*.*.*
    • git tag -a v2.0.0
  2. Push a tag to Github
  3. Github action should publish the extension to both Firefox and Chrome
    • Firefox should be released in a couple of minutes
    • Chrome can take as long as a few months if it needs a review